Ciao a tutti.
Qualcuno ha qualche script per inserire ed estrarre da un database un' immagine.
Grazie!
Ciao a tutti.
Qualcuno ha qualche script per inserire ed estrarre da un database un' immagine.
Grazie!
nel data base inserisci solo il nome del file immagine.
¿Hasta la pasta?
...tramite il phpmyadmin ho inserito dalla path la foto.ma hai (o avete) qualche script per farla visualizzare in una pagina php? Grazie!
Inizia leggendo questa guida di gm che è fatta molto bene.
http://freephp.html.it/articoli/view_articolo.asp?id=73
![]()
Ciao a tutti!
Ho provato ad utilizzare lo script consigliatomi in http://freephp.html.it/articoli/view_articolo.asp?id=73
rimanegiandolo un pò.
lo propongo di seguito:
//connessione.php
<?php
function errore(){
echo"si è verificato un errore;descrizione Errore:". mysql_error();
}
// Funzione che mi permette di collegarmi al server MySql
// mysql_connect("nome_host","nome_utente","password" )
$connessione=mysql_connect("localhost","root","");
// controllo di avvenuta connessione
if($connessione){
echo"utente connesso";}
else{
errore();
exit;
}
// funzione che mi permette di connettermi al database
// mysql_select_db(nome_database,connessione) connessione è la variabile connessione
echo"
";
$nome_database="FileBinari";
$database= mysql_select_db($nome_database,$connessione);
if($database){
echo"DATABASE ". $nome_database. " connessi al database" ;}
else{
echo"
";
errore();
exit;
}
echo"
";
?>
//upload.php
<?php
INCLUDE("connessione.php");
if(!isset($_POST)) $_POST = $HTTP_POST_VARS;
$self = isset($_SERVER) ? $_SERVER["PHP_SELF"] : $HTTP_SERVER_VARS["PHP_SELF"];
if($_POST["invia"]) {
// CONNESSIONE AL MYSQL
//@mysql_connect("host", "user", "password") or die("Connessione fallita !");
// SELEZIONE DATABASE
//@mysql_select_db("FileBinari") or die("Selezione Database fallita !");
// MEMORIZZIAMO NELLA VARIABILE $data IL CONTENUTO DEL FILE
$data = addslashes(fread(fopen($_FILES["file_binario"]["tmp_name"], "rb"), $_FILES["file_binario"]["size"]));
// ESEGUIAMO LA QUERY DI INSERIMENTO
$result = @mysql_query("INSERT INTO file_binari (Descrizione, DatiBinari, Nome, Size, Type)
VALUES ('" . $_POST["Descrizione"] . "','$data','" . $_FILES["file_binario"]["name"] . "',
'" . $_FILES["file_binario"]["size"] . "','" . $_FILES["file_binario"]["type"] . "')")
or die("Query di inserimento fallita !");
// ESITO POSITIVO
echo "Il file " . basename($_FILES["file_binario"]["name"]) . " è stato correttamente inserito nel Database.";
// CHIUDIAMO LA CONNESSIONE A MYSQL
@mysql_close();
} else {
echo "
<html>
<head>
<title>Form per l'inserimento</title>
</head>
<body>
<div align=\"center\">
<table>>
<form action=\"$self\" method=\"POST\" enctype=\"multipart/form-data\">
<tr>
<td valign=\"top\">Descrizione </td>
<td><textarea name=\"Descrizione\" cols=\"40\" rows=\"5\"></textarea></td>
</tr>
<tr>
<td>File</td>
<td><input type=\"file\" name=\"file_binario\" size=\"40\"></td>
</tr>>
<tr>
<td colspan=\"2\" valign=\"bottom\" align=\"center\" height=\"30\">
<input type=\"submit\" value=\"Invia il file\" name=\"invia\"></td>
</tr>
</form>
</table>
</div>
</body>
</html>
";
}
?>
//action.php
<?php
INCLUDE("connessione.php");
if(!isset($_GET)) $_GET = $HTTP_GET_VARS;
if($_GET["action"] && $_GET["Id"] && is_numeric($_GET["Id"])) {
// CONNESSIONE AL MYSQL
//@mysql_connect("host", "user", "password") or die("Connessione fallita !");
// SELEZIONE DATABASE
//@mysql_select_db("FileBinari") or die("Selezione Database fallita !");
switch($_GET["action"]) {
// VISUALIZZAZIONE
case "view" :
$query = "SELECT DatiBinari, Type FROM file_binari WHERE Id = '" . $_GET["Id"] . "'";
$select = @mysql_query($query) or die("Query fallita !");
$result = @mysql_fetch_array($select);
$data = $result["DatiBinari"];
$type = $result["Type"];
Header("Content-type: $type");
echo $data;
break;
// DOWNLOAD
case "download" :
$query = "SELECT DatiBinari, Nome, Type FROM file_binari WHERE Id = '" . $_GET["Id"] . "'";
$select = @mysql_query($query) or die("Query fallita !");
$result = @mysql_fetch_array($select);
$data = $result["DatiBinari"];
$name = $result["Nome"];
$type = $result["Type"];
// SE IL BROWSER E' INTERNET EXPLORER
if(ereg("MSIE ([0-9].[0-9]{1,2})", $_SERVER["HTTP_USER_AGENT"])) {
header("Content-Type: application/octetstream");
header("Content-Disposition: inline; filename=$name");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Pragma: public");
} else {
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=$name");
header("Expires: 0");
header("Pragma: no-cache");
}
echo $data;
break;
default :
// DEFAULT CASE, NESSUNA AZIONE
break;
} // endswitch
// CHIUDIAMO LA CONNESSIONE
@mysql_close();
} //endif
?>
//visualizza.php
<?php
INCLUDE("connessione.php");
// CONNESSIONE AL MYSQL
//@mysql_connect("host", "user", "password") or die("Connessione fallita !");
// SELEZIONE DATABASE
//@mysql_select_db("FileBinari") or die("Selezione Database fallita !");
// TIPI DI FILE VISUALIZZABILI
$visualizzabili = array("image/jpeg", "image/pjpeg", "image/gif", "image/png");
$query = "SELECT * FROM file_binari";
$select = @mysql_query($query) or die("Query fallita !");
echo "
<div align=\"center\"> <table>
";
while($result = @mysql_fetch_array($select)) {
echo " <tr>\n <td align=\"center\">" . $result["Nome"];
echo "<font size=\"1\">(" . $result["Size"] . " bytes)</font>";
if($result["Descrizione"]) echo "
" . $result["Descrizione"];
echo "</td>\n <td valign=\"top\"> <a href=\"actions.php?action=download";
echo "&Id=" . $result["Id"] . "\" target=\"_blank\">download</a> </td>\n";
echo " <td valign=\"top\">";
if(in_array($result["Type"], $visualizzabili)) {
echo " <a href=\"actions.php?action=view&Id=" . $result["Id"] . "\" ";
echo "target=\"_blank\">visualizza</a> ";
}
echo "</td>\n </tr>\n";
}
echo "</table>\n</div>\n";
// CHIUDIAMO LA CONNESSIONE A MYSQL
@mysql_close();
?>
purtroppo carica l'immagine nel database ma non me la fa vedere a schermo.Dove è l'errore? Qualcuno può darmi una mano?
Un aiutino.....
Grazie a tutti
Scusate se UPPO.
mi servirebbe proprio un aiutino.
Grazie.