Visualizzazione dei risultati da 1 a 2 su 2

Discussione: upload video

  1. #1

    upload video

    Ciao a tutti.

    Ho un problema con upload di file di grandi dimensioni come i video.

    La mia funzione è la seguente:

    codice:
        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 &egrave; 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&rsquo;upload &egrave; 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 &egrave; stato caricato";
                $errori[5] = "la cartella temporanea non esiste (da PHP 4.3.10 e PHP 5.0.3)";
    
                echo "si &egrave; 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;
            }
    Il php.ini ha la variabile upload_max_size a 50MB

    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
    Il cinghiale è un animale raffinato

  2. #2
    Controlla anche le direttive PHP memory_limit, post_max_size e, se utilizzi Apache, la direttiva LimitRequestBody .

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.