Ciao a tutti.
Ho un problema con upload di file di grandi dimensioni come i video.
La mia funzione è la seguente:
Il php.ini ha la variabile upload_max_size a 50MBcodice:function uploadFile($formName, $percorso, $nuovoNome, $maxSize = 2500000) { //error_reporting(E_ALL); // 2047 e' la costante E_ALL che riporta tutti gli errori if( is_uploaded_file($_FILES[$formName]['tmp_name']) && // se è stato caricato ($_FILES[$formName]['size'] < $maxSize) ) { // se pi' piccolo di 5 Mega if(!move_uploaded_file($_FILES[$formName]['tmp_name'], $percorso.$nuovoNome)) {// sposto il file echo "si è verificato un errore durante l'upload: ".$_FILES[$formName]["error"]; return false; } @chmod($percorso.$nuovoNome, 0755); return $percorso.$nuovoNome; } else { // c'e' qualche errore $errori[0] = "nessun errore, l’upload è stato eseguito con successo"; $errori[1] = "il file caricato eccede la dimensione massima specificata in upload_max_filesize"; $errori[2] = "il file inviato eccede le dimensioni specificate nel parametro MAX_FILE_SIZE del form (se presente)"; $errori[3] = "upload eseguito solo parzialmente"; $errori[4] = "il file non è stato caricato"; $errori[5] = "la cartella temporanea non esiste (da PHP 4.3.10 e PHP 5.0.3)"; echo "si è verificato un errore durante l'upload: ".$_FILES[$formName]["error"]." "; echo 'Nome file temporaneo: ' . $_FILES['foto']['tmp_name'] . ' '; echo 'Nome file: '.$_FILES[$formName]['name'].' '; echo 'MIME Type: '.$_FILES[$formName]['type'].' '; echo 'Dimensione: '.$_FILES[$formName]['size'].' byte '; echo '====================== '; return false; }
Se carico un'immagine o un qualsiasi video sotto (circa) i 7MB funziona,
se provo ad uploadare un file più grande mi entra nell'else perché
is_uploaded_file($_FILES[$formName]['tmp_name']) risulta false
e quello che mi fa impazzireè che
$_FILES[$formName]["error"] non restituisce niente! Perchè!!!![]()
Non restituisce niente neanche
$HTTP_POST_FILES[$formName]['error']
Cosa posso fare? Perché se il limite è 50MB non mi regge file da 10MB?
Capisco che in un sito online magari c'è il problema del timeout, ma in locale deve funzionare!... non so proprio dove battere la testa![]()

è che
Rispondi quotando