Salve a tutti,
ho un piccolo problema.
Ho la seguente pagina php dove è possibile per l'utente scegliere e caricare su webserver un file.
Ho impostato come dimensione massima 20 MB.
Il mio problema è il seguente:
se scelgo un file superiore a 20 MB non mi viene dato il messaggio di errore ma ritorna alla pagina di selezione come se niente fosse.
Ecco il codice:
Sapete inoltre come far apparire una progressbar o qualcosa del genere durante il caricamento?codice:<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> </head> <body> <form ENCTYPE="multipart/form-data" action="up.php" method="post"> <input type="file" id="file1" name="file1"/> <input type="submit" value="upload"/> <? //verificare xkè quando si fa l'upload di un file molto grande dice nessun file selezionato! (non prende la dimensione?? $dimensione_massima=20971520; //dimensione massima consentita per file in byte (20MB) $dimensione_massima_MB=$dimensione_massima/1048576; //1048576=numero di byte che formano un MB $cartella_upload="public/"; //cartella in cui eseguire l'upload $filtrare=1; //filtrare x estensioni ammesse? 1=si 0=no $array_estensioni_ammesse=array('.jpg','.jpeg','.gif','.png','.zip'); //estensioni ammesse if(!isset($_FILES['file1']) || $_FILES['file1']['size']==0){ echo '<p align ="center">Nessun file selezionato</p>'; }elseif($_FILES['file1']['size']>$dimensione_massima){ echo '<p align ="center">Dimensione massima: $dimensione_massima_MB MB</p>'; }else{ $nome_file=$_FILES['file1']['name']; $errore=""; if($filtrare==1){ $estensione = strtolower(substr($nome_file, strrpos($nome_file, "."), strlen($nome_file)-strrpos($nome_file, "."))); if(!in_array($estensione,$array_estensioni_ammesse)){ $errore.='<p align ="center">Upload file non ammesso. Estensioni ammesse: '.implode(", ",$array_estensioni_ammesse).'</p>'; } } if(!file_exists($cartella_upload)){ $errore.='<p align ="center">La cartella di destinazione non esiste</p>'; } if($errore==""){ if(move_uploaded_file($_FILES['file1']['tmp_name'], $cartella_upload.$_FILES['file1']['name'])){ chmod($cartella_upload.$_FILES['file1']['name'],0777); //permessi per poterci sovrascrivere/scaricare echo '<p align ="center">Upload eseguito con successo.</p>'; }else{ echo '<p align ="center">Impossibile effettuare l\'upload del file</p>'; } }else{ echo $errore; } } ?> </body> </html>

Rispondi quotando