Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    131

    PHP - Caricamento File Pesante nel database MySQL - Fallisce

    Salve, altro problema.
    Quando carico un file pesante alla fine del caricamento il file fallisce, non viene caricato.
    Non viene dato nessun errore, non da risposta.
    Il codice che uso per caricare i file:

    codice:
    <?php    
    if(isset($_POST['upload'])&&$_FILES['userfile']['size']>0)
    {
    $fileName = $_FILES['userfile']['name'];
    $tmpName  = $_FILES['userfile']['tmp_name'];
    $fileSize = $_FILES['userfile']['size'];
    $fileType = $_FILES['userfile']['type'];
    $fileType=(get_magic_quotes_gpc()==0 ? mysql_real_escape_string(
    $_FILES['userfile']['type']) : mysql_real_escape_string(
    stripslashes ($_FILES['userfile'])));
    $fp      = fopen($tmpName, 'r');
    $content = fread($fp, filesize($tmpName));
    $content = addslashes($content);
    $vuoto = " ";
    $Completo = $tr[1].$vuoto.$tr[2];
    fclose($fp);
    if(!get_magic_quotes_gpc())
    {
        $fileName = addslashes($fileName);
    }
    $con = mysql_connect('localhost', 'utente', 'pass') or die(mysql_error());
    $db = mysql_select_db('test_db', $con);
    if($db){
    $query = "INSERT INTO upload (name, size, type, content, NomeUtente) ".
    "VALUES ('$fileName', '$fileSize', '$fileType', '$content', '$Completo')";
    mysql_query($query) or die('Error, query failed'); 
    mysql_close();
    echo "<br>File $fileName Caricato<br>";
    
    
    }else { echo "Caricamento File Fallito"; }
    }  
    ?>
    Come posso risolvere il problema?
    Grazie in anticipo

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Ci sono limiti imposti dal server, c'è una dimensione massima per il file da inviare e un tempo massimo per l'esecuzione di uno script, evidentemente violi almeno uno dei due.

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    131
    Nel form ho questo come limite: <input type="hidden" name="MAX_FILE_SIZE"value="16000000">
    Nel database non ho nulla che impone un limite, che devo fare?

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    131
    Apposto risolto, tramite terminale ho aumentato il limite di upload, grazie per la dritta.
    Chiedo scusa per i numerosi post.

  5. #5
    devi vedere l'upload_max_size e il max_execution_time, se crei un file php con dentro questo codice
    Codice PHP:
    <?php phpinfo(); ?>
    puoi vedere il valore dei 2 limiti.
    Se hai un server/vps puoi cambiare questi limiti dal file php.ini
    Altrimenti dipende dal tuo hosting provider e puoi modificare questi 2 parametri dal file .htaccess della directory dove risiede lo script anche se non non sempre in con l'htaccess funziona. Nel caso ti conviene chiedere al tuo hosting provider

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Non vuol dire niente, il MAX_FILE_SIZE è settato nel file di configurazione del webserver, il file php.ini, scrivendo quella cosa lì, passi semplicemente un valore che non dipende dal nome.

    Per capirci, per lo script
    <input type="hidden" name="MAX_FILE_SIZE" value="16000000">
    e
    <input type="hidden" name="pippo" value="16000000">

    fanno la stessa cosa, stai passando il valore 16000000, nel primo caso va recuperato con $_POST['MAX_FILE_SIZE'], nel secondo con $_POST['pippo'], ma per lo script quel numero è soltanto un numero.
    Il fatto che nel primo caso chiami la variabile MAX_FILE_SIZE non genera nessun comportamento particolare.

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    131
    già risolto, ho cambiato i valori:
    upload_max_filesize
    post_max_size

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 © 2024 vBulletin Solutions, Inc. All rights reserved.