|
|||
|
Ciao a tutti,
ho bisogno di un grande aiuto…sto realizzando un form per l’upload di files direttamente in uno spazio web!!! A tale proposito ho letto il tutorial su php.html.it che,a parte il fatto dei permessi,risulta abbastanza comprensibile…ma non mi funziona!!!! Ho così dato uno sguardo,approfondito,ad altri tutorial che non specificano di cambiare i permessi ma….non mi cambiano il risultato!!! Il codice che ho utilizzato è questo: <? function sicurezza($ammessi, $mime){ for ($i=0; $i<count($ammessi); $i++){ if(stristr($mime, $ammessi[$i])) return true; } return false; } if(isset($_POST['invia'])) { # MEMORIZZIAMO NELLA VARIABILE $file_content IL CONTENUTO DEL FILE $ammessi[0] = 'image'; $ammessi[1] = 'pdf'; $file_content = $_FILES['file']['tmp_name']; $file_name = $_FILES['file']['name']; if ($_FILES['file']['size'] <= 10240 && sicurezza($ammessi, $_FILES['file']['type'])){ ## ## se il file è al max 10 kbyte faccio l'upload if (copy($file_content, "files/".$file_name)) { print " <h2>Il file ".basename($file_name)." è stato inserito correttamente</h2>"; } else { ## altrimenti l'upload è fallito print " <h2>Il file ".basename($file_name)." NON è stato inserito correttamente</h2>"; } } else { print " <h2>Il file ".basename($file_name)." è superiore ai 10 kbyte oppure non è del tipo corretto!!<br />Inserimento non effettuato</h2>"; } } elseif(isset($_POST['elimina'])) { ## se è stato selezionato qualche file da eliminare, procedo alla eliminazione $files=$_POST['file']; for ($i=0; $i<count($files); $i++){ unlink("files/".$files[$i]); } } $files = array (); if ($handle = opendir('files/')) { while (FALSE !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { array_push($files, $file); } } closedir($handle); } if (!empty($files)){ print " <form action=\"upload_fs.php\" method=\"post\"> <table summary=\"lista dei file gi` caricati: nella prima colonna l'opzione di selezione, nella seconda il link al file\"> <tr> <th scope=\"col\">Elimina</th> <th scope=\"col\">File</th> </tr>"; foreach ($files as $indice => $file_name){ $file_size = filesize("files/".$file_name); print " <tr> <td scope=\"row\"><input type=\"checkbox\" name=\"file[]\" value=\"$file_name\" /></td> <td><a href=\"files/$file_name\">$file_name</a> ($file_size bytes)</td> </tr>"; } print " </table> <input type=\"submit\" name=\"elimina\" value=\"Elimina\" /> </form>"; } ?> <form action="upload_fs.php" method="post" enctype="multipart/form-data"> <label for="file">File <span style="color: #F00; font-weight: bold;">*</span>:</label> <input type="file" name="file" id="file" size="40"><br /> <input type="submit" value="Carica il file" name="invia" /> </form> <p><span style="color: #F00; font-weight: bold;">*</span> È possibile caricare immagini o documenti in pdf non più grandi di 10kb.</p> magari con il vostro aiuto posso capirci qualcosa di più,visto che non ci capisco niente da sola! Il mio dubbio è sul percorso assoluto della directory dove spostare i files uploadati…perché i miei files (index.html, upload.php,files(directory)),si troverebbero in un “sottodominio”(se così si può chiamare),cioè www.miodominio.it/upload...quindi il percorso assoluto rimane sempre “files/”? Per quanto riguarda i permessi invece,ho quelli di scrittura e di lettura (666 per intenderci),quando provo a settarli con 777 me li cambia momentaneamente ma poi si reimpostano a 666,per questo ho preferito usare questo script anziché qullo di php. |
![]() |
| Strumenti discussione | |
| Modalità visualizzazione | |
|
|
Discussioni simili
|
||||
| Discussione | Autore discussione | Forum | Risposte | Ultimo messaggio |
| Errore in upload file con file manager | NetMassimo | Pannello di controllo Cpanel - Linux | 2 | 07-03-2008 10.42.04 |
| upload di file relativamente grossi non riesce! | mat | PHP | 2 | 19-06-2007 19.28.30 |
| Upload di grossi file | Mathew | PHP | 4 | 02-01-2007 10.47.42 |
| Errore durante upload file | Luc]{y | PHP | 13 | 29-06-2005 17.53.36 |
| File Upload Center Sergey Korostel | Fra | PHP | 10 | 12-07-2003 15.25.00 |