Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2013
    Messaggi
    25

    Come caricare un immagine su database mysql

    Salve io ho un problema con la lettura delle img che inseriswco sul db, mi fa vedere solo l'icona dell'immagine e non l'immagine proprio

    questo è il mio codice:
    db:
    CREATE TABLE tabella_file
    (
    id INT (10) NOT NULL auto_increment,
    nome VARCHAR (255) default NULL,
    tipo VARCHAR (128) default NULL,
    dati BLOB,
    PRIMARY KEY (id)
    )


    upload.htm dove mettere il form per l'upload

    PHP:
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Carica file nel DB</title>
    </head>
    <body>


    Seleziona un file da memorizzare nel database:</p>
    <form name="upload" enctype="multipart/form-data" method="post" action="write_db.php">



    <input type="file" name="file_inviato">

    <input type="submit" name="invia" value="Invia file">
    </p>
    </form>
    </body>
    </html>

    funzione per scrivere l'immagine caricata dal form sul database write_db.php

    PHP:
    // Connessione e selezione del database
    mysql_connect("localhost", "root", "password")
    or die("Connessione non riuscita: " . mysql_error());

    if(!mysql_select_db("mio_db"))
    die("Selezione database fallita!");

    // Recupero delle informazioni sul file inviato
    $nome_file_temporaneo = $_FILES["file_inviato"]["tmp_name"];
    $nome_file_vero = $_FILES["file_inviato"]["name"];
    $tipo_file = $_FILES["file_inviato"]["type"];

    // Leggo il contenuto del file
    $dati_file = file_get_contents($nome_file_temporaneo);

    // Preparo il contenuto del file per la query sql
    $dati_file = addslashes($dati_file);

    // Query per inserire il file nel DB
    $query = "INSERT INTO tabella_file SET
    nome = '$nome_file_vero',
    tipo = '$tipo_file',
    dati = '$dati_file'";

    mysql_query($query)
    or die("Query non valida: " . mysql_error());

    // Messaggio di successo
    echo "Memorizzazione del file $nome_file_vero nel database eseguita correttamente!");


    view.php che elenca tutti i file contenuti nella tabella.

    PHP:
    // Connessione e selezione del database
    mysql_connect("localhost", "root", "password")
    or die("Connessione non riuscita: " . mysql_error());

    if(!mysql_select_db("mio_db"))
    die("Selezione database fallita!");

    // Query per ottenere l'elenco dei files
    $query = "SELECT * FROM tabella_file";

    $risultato = mysql_query($query)
    or die("Query non valida: " . mysql_error());

    // Se ci sono file nel DB
    if(mysql_numrows($risultato))
    {
    // Estrazione dei risultati e stampa dei links
    while ($tmp = mysql_fetch_array($risultato))
    {
    echo "

    <a href=\"open.php?id=$tmp[id]\">$tmp[nome]</a></p>\n";
    }
    }
    else
    {
    echo "

    Nessun file presente nel database</p>";
    }


    open.php Per visualizzare il contenuto del file

    PHP:
    if($_GET['id'] == "")
    header("Location: view.php");

    // Connessione e selezione del database
    mysql_connect("localhost", "root", "password")
    or die("Connessione non riuscita: " . mysql_error());

    if(!mysql_select_db("my_db"))
    die("Selezione database fallita!");

    // Query per recuperare il file
    $query = "SELECT * FROM tabella_files WHERE id_file = " . $_GET["id"];
    $risultato = mysql_query($query)
    or die("Query non valida: " . mysql_error());
    $tmp = mysql_fetch_array($risultato);

    // Invio l'intestazione contenente il tipo MIME del file
    header("Content-Type: " . $tmp["tipo"]);

    // Invio il contenuto del file
    echo $tmp["dati"];


    a questo punto mi carico l'img sul database che la vede ma al momento della visione dell'img
    sulla finestra, non si vede nulla for che l'iconcina standard delle img

    non riesco a capire dv si trovi l'errore
    aiutatemi plsss
    grazie

  2. #2
    1) devi usare i tag [ php ] e quello con chiusura per mettere il codice, se premi il bottone qui sopra con scritto php avrai un esempio, ma meglio se metti bene il codice.

    2) Quando stampi a video l'immagine noti errori di sorta sul codice html?

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2013
    Messaggi
    25
    non appare nessuna scritta con errori vari
    c'è solo in alto a destra l'iconcina dell'img
    potrebbe essere un errore di impostazione del blob?

  4. #4


    se guardi il codice html... dove mette l'immaginetta mette tutto giusto?

    potrebbe dipendere da molte cose, ma probabilmente o dall'impostazione del blob o da come lo vuoi visualizzare a video

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2013
    Messaggi
    25
    http://marsonleonardo.altervista.org.../open.php?id=8

    questo è il link dell'immagine che dovrebbe uscire fuori

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.