Secondo voi cosa c'è di sbagliato in quello che ho scritto?
perchè ogni volta che provo a fargli fare l'upload mi dice sempre "IMPOSSIBILE ESEGUIRE L'UPLOAD" anche se le dimensioni e le estensioni sono giuste . . . . help me
Codice PHP:
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data">
Titolo:
<input name="titolo" type="text" size="20">
Descrizione:
<textarea name="descrizione" cols="20" rows="4"></textarea>
Immagine:
<input type="file" name="imagefile">
<input type="submit" name="Submit" value="Submit">
<?php
if(isset($_POST['Submit'])){
// faccio un po' di inclusioni...
@include 'config.php';
@require 'function.php';
// Creo una array con i formati accettati
$tipi_consentiti = array("*.gif","*.jpeg","*.png");
// verifico che il formato del file sia tra quelli accettati
if (@in_array($_FILES['imagefile']['type'], $tipi_consentiti)){
// copio il file nella cartella delle immagini
@copy ($_FILES['imagefile']['tmp_name'], $path_img . $_FILES['imagefile']['name']);
// recupero i dati dal form
$titolo = @addslashes($_POST['titolo']);
$descrizione = @addslashes($_POST['descrizione']);
$nome = @addslashes($_FILES['imagefile']['name']);
$path = $path_img . stripslashes($nome);
$tipo = @addslashes($_FILES['imagefile']['type']);
// creo la miniatura
@makeThumb($path_img,$path,$nome,$tipo);
// aggiorno il database
$query = "INSERT INTO images (Titolo,Descrizione,Nome,Tipo) VALUES('$titolo','$descrizione','$nome','$tipo')";
$res = @mysql_query($query) or die (mysql_error());
@mysql_close($cn);
// Stampo a video un po' di informazioni
echo "Nome: ".$_FILES['imagefile']['name']."
";
echo "Dimensione: ".$_FILES['imagefile']['size']."
";
echo "Tipo: ".$_FILES['imagefile']['type']."
";
echo "Copia eseguita con successo.";
}else{
// stampo un messaggio di errore nel caso in cui il file sia di un formato non consentito
echo "Impossibile eseguire l'upload.";
}
}
?>
</form>