- Home
- Categorie
- Coding e Sistemistica
- MYSQL e altri Database
- memorizzare files in mysql tramite php
-
memorizzare files in mysql tramite php
Ciao a tutti! Ho bisogno di aiuto per un grosso problema: ho creato un modulo html dove si carica un file immagine da client che poi viene passato a php che provvede a memorizzarlo nel database mysql per poi richiamarlo a fondo pagina insieme a tutti i files immagine presenti, funziona tutto ma l'immagine non si memorizza, il campo rimane vuoto, qualcuno può aiutarmi?
Questo è il codice:$size="900000";
echo "Prova lo script inserendo qui il tuo file!
<font color="red">
Non puoi archiviare file più grandi di $size bytes.</font><FORM ENCTYPE="multipart/form-data" ACTION="$PHP_SELF" METHOD="POST">
Inserisci il file da archiviare<INPUT NAME="userfile" TYPE="file">
<INPUT TYPE="submit" name="upload" VALUE="Salva File">
</FORM>";if ($upload) {
echo "Nome file: <font color="#0000FF">".$userfile_name."</font>
";
echo "Mime types: <font color="#0000FF">".$userfile_type."</font>
";
echo "Size file: <font color="#0000FF">".$userfile_size."</font> bytes
";$max = filesize($userfile);
if ($max > "$size"){
die ("**
<font color="red">
Ops... ATTENZIONE!!!Il tuo file $userfile_name corrisponde a $userfile_size bytes,
prova con un altro file di dimensioni max = $size bytes</font>**");
}if (
($userfile_type == "image/pjpeg") // file immagini jepg jpeg
or ($userfile_type == "image/gif") // file immaggini gif
or ($userfile_type == "image/x-png") // file immagini png
#or ($userfile_type == "image/bmp") // file immagini bmp
or ($userfile_type == "video/avi") // video avi
or ($userfile_type == "application/x-zip-compressed") // file zip
or ($userfile_type == "application/pdf") // file pdf
or ($userfile_type == "audio/wav") // file audio wav
($userfile_type == "text/html") // file html
)
{
$imageDATA = addslashes(fread(fopen($userfile, "r"), filesize($userfile)));MYSQL_CONNECT($hostname, $username, $password)
OR DIE("Non riesco a connettermi a MySql");
@mysql_select_db("$dbName") or die
("Non riesco a selezionare il DB $dbName");$INSERT = "INSERT INTO $userTABLE values
('$idnum','$imagedata','$userfile_name','$userfile_type','$userfile_size')";
$result = MYSQL_QUERY($insert);
$query = "SELECT * FROM $userTABLE WHERE(idnum=$idnum)";
$INSERT = MYSQL_QUERY($query);
$idnum = mysql_insert_id();
$i++;if (($userfile_type == "image/pjpeg")
or ($userfile_type == "image/gif")
or ($userfile_type =="image/x-png")){
echo "**
Eccoti l'anteprima della tua immagine**
";
echo "<img src="tampil.php3?id=$idnum">
";
}else{
echo "**
Clicca quì per scaricare il tuo file
<a href="tampil.php3?id=$idnum">$userfile_name</a>\n
";
}
echo "Puoi anche scegliere di cliccare qui
<a href="tampil.php3">tampil.php3</a> per visionare
l'intero elenco dei file archiviati.";
MYSQL_CLOSE();die;
}
}
?>Grazie tante! cIAO
-
$imageDATA quando lo setti
$imagedata quando lo salviSono 2 variabili diverse!
-
scrupolo: il campo è di tipo BLOB?
-
Ciao! Grazie per avermi risposto così velocemente. Rispondo a "Margheritebianche": ho corretto l'errore ma non funziona lo stesso!sigh!
Rispondo a "Tambu":il campo è di tipo "longblob".Vi prego aiutatemi! Ciao ciao!