Anche cercando su alcune guide non sono riuscito a capire come salavre un'immagine in un db, nn capisco il funzionamento del codice.
Vi posto ciò ke ho scritto:
ovviamente nel form precedente aggiungo il film in questo modo:
il contenuto della funzione upload è questo:
L'errore che mi restituisce è impossibile eseguire l'upload
Non sò proprio dove rimediare ho fatto un pò di confusione .
Vi posto ciò ke ho scritto:
PHP:
<html>
<head>
<title>Memorizzazione del file sul server</title>
</head>
<body>
<H3>Informazioni sul file trasferito:</H3>
<?php
if ($_FILES['file_name']['error'] != UPLOAD_ERR_OK)
{
print("C'è stato un errore nel trasferimento<BR>\n");
}
else
{
copy($_FILES['file_name']['tmp_name'],".\\".$_FILES['file_name']['name']);
unlink($_FILES['file_name']['tmp_name']);
print("Nome del file temporaneo: " . $_FILES['file_name']['tmp_name'] ."<BR>\n");
print("Nome del file trasferito: " . $_FILES['file_name']['name'] . "<BR>\n");
print("Dimensione: " . $_FILES['file_name']['size'] . "<BR>\n");
print("Tipo: " . $_FILES['file_name']['type'] . "<BR>\n");
print("</hr>\n");
}
$host='127.0.0.1';
$user='mionome';
$password='miapassword';
$database='iscrizione_utente';
$db=mysql_connect($host, $user, $password) or die ("Impossibile connettiersi al server $host!");
mysql_select_db($database, $db) or die ("Impossibile connettersi al database $database!");
$stringa_c=
"CREATE TABLE IF NOT EXISTS foto (
id_foto int(10) NOT NULL auto_increment,
nome varchar(20) not null, size varchar(30) not null, type varchar(20) not null, immagine varchar(20) not null, PRIMARY KEY (`id_foto`))";
var_dump($stringa_c);
mysql_query($stringa_c) or die (mysql_error());
@include 'upload.php';
if (isset($_FILES['file']))
{
upload();
}
echo "
<h3>Upload</h3>
<form enctype=\"multipart/form-data\"
action=\"".$_SERVER['PHP_SELF']."\" method=\"post\">
<input type=\"hidden\" name=\"MAX_FILE_SIZE\"
value=\"300000\" />
<input type=\"file\" name=\"file\" size=\"40\" />
<input type=\"submit\" value=\"Invia\" />
</form>
<br /><a href=\"link.php\">Elenco</a>";
PHP:
<FORM enctype="multipart/form-data" ACTION="memorizzazione.php" method="post">
<INPUT TYPE="hidden" NAME="MAX_FILE_SIZE" value="1024000">
<input name="file_name" type="file" id="foto">
<INPUT TYPE="submit" value="Inserisci foto">
</FORM>
il contenuto della funzione upload è questo:
PHP:
<?php
function upload()
{
$result = false;
$immagine = '';
$size = 0;
$type = '';
$nome = '';
$max_size = 300000;
$result = @is_uploaded_file($_FILES['file']['tmp_name']);
if (!$result)
{
echo "Impossibile eseguire l'upload.";
return false;
}else{
$size = $_FILES['file']['size'];
if ($size > $max_size)
{
echo "Il file è troppo grande.";
return false;
}
$type = $_FILES['file']['type'];
$nome = $_FILES['file']['name'];
$immagine = @file_get_contents($_FILES['file']['tmp_name']);
$immagine = addslashes ($immagine);
@include 'config.php';
$sql = "INSERT INTO foto (nome, size, type, immagine) VALUES ('$nome','$size','$type','$immagine')";
$result = @mysql_query ($sql) or die (mysql_error());
return true;
}
}
?>
L'errore che mi restituisce è impossibile eseguire l'upload
Non sò proprio dove rimediare ho fatto un pò di confusione .