19/09/2008 16:30
Ho creato questo script molto velocemente e senza provarlo, quindi potrebbero esserci degli errori:
Codice PHP:
<?php
$estensioni = array('jpg','jpeg','png','gif'); // Elenco delle estensioni dei file che si possono caricare
$uploaddir = 'upload/'; // Percorso della cartella in cui caricare i file
$to = 'pippo@pippo.it'; // Indirizzo e-mail a cui spedire la notifica del caricamento del file
$err = array();
$descrizione = trim(str_replace('/',' ',$_POST['descrizione']));
if($descrizione=='')
$err[] = 'Devi inserire la descrizione.';
$ext = strtolower(substr(strrchr($_FILES['userfile']['name'],'.'),1));
$counter = count($estensioni);
$ok = false
for($i=0;$i<$counter;$i++)
if($ext==strtolower($estensioni[$i])){
$ok = true;
break;
}
if(!$ok){
$err[] = 'Il file ha un\'estensione non valida.';
}
if(empty($err)){
$i = '';
while(file_exists($uploaddir.$descrizione.$i.'.'.$ext))
if(!is_int($i))
$i = 2;
else
$i++;
$uploadfile = $uploaddir.$descrizione.$i.'.'.$ext;
if(!move_uploaded_file($_FILES['userfile']['tmp_name'],$uploadfile))
$err[] = 'C\'è stato un problema nel caricamento del file.';
}
if(empty($err)){
mail($to,'File caricato','È stato caricato il file '.$descrizione.$i.'.'.$ext);
echo '<p>File caricato correttamente.</p>';
} else {
echo '<ul>';
$counter = count($err);
for($i=0;$i<$counter;$i++)
echo '<li>'.$err[$i].'</li>';
echo '</ul>';
}
?>
Mattia!