Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    3

    upload immagini: tmp_name vuoto e error=2

    ciao

    sto impazzendo con un errore nell'uploading dei file.
    ho un form predisposto per l'upload di alcuni file. riesco a eseguire l'upload solo di una immagine, per tutte le altre in $_FILES[img1][error] trovo il valore 2. controllando ho scoperto che si tratta di un errore di grandezza eccessiva dell'immagine.

    allora ho provato ad aumentare la grandezza dell'input MAX_FILE_SIZE del form o a rimuoverlo direttamente, ma la situazione non cambia.

    in php.ini ho il valore max di upload impostato a 2M e le immagini che tento di caricare pesano solo alcuni kb.

    qualcuno può darmi una spiegazione di cosa sta succedendo? posto parte del codice. questo è il form


    <form name="nuovo_ann" id="id_nuovo_ann" method="post" action="nuovo_annuncio.php?command=nuovo_ann" enctype="multipart/form-data">
    <table id="tbl_1">
    <tr><td>
    <p class="field_name" id="sott_txt">Foto immobile</p>
    <input type="hidden" name="MAX_FILE_SIZE" value="5000000" />
    </td></tr>
    <tr><td><input type="hidden" name="MAX_FILE_SIZE" value="500" /></td></tr>
    <tr><td><input type="file" class="load" name="img1" id="id_img1" /></td></tr>
    <tr><td><input type="file" class="load" name="img2" id="id_img2" /></td></tr>
    <tr><td><input type="file" class="load" name="img3" id="id_img3" /></td></tr>
    <tr><td><input type="file" class="load" name="img4" id="id_img4" /></td></tr>
    <tr><td><input type="file" class="load" name="img5" id="id_img5" /></td></tr>
    </table>
    </form>




    questo il codice php:

    Codice PHP:
                      // crea la cartella dell'annuncio
                      
    $newDir 'foto_annunci/ann_'.$lastInsertId.'/';
                      
    mkdir($newDir);
                      
    var_dump($_FILES);
                      
    //salva le foto
                      
    for ($i=1$i<=5$i++) {
                          
                          
    //echo 'strcmp = ' . strcmp($_FILES['img'.$i]['name'],'');
                          
    if (strcmp($_FILES['img'.$i] ['error'], '0') != 0) {
                              switch (
    $_FILES['img'.$i] ['error'])
                                 {  case 
    1:
                                           print 
    '

     The file is bigger than this PHP installation allows</p>'
    ;
                                           break;
                                    case 
    2:
                                           print 
    '

     The file is bigger than this form allows</p>'
    ;
                                           break;
                                    case 
    3:
                                           print 
    '

     Only part of the file was uploaded</p>'
    ;
                                           break;
                                    case 
    4:
                                           print 
    '

     No file was uploaded</p>'
    ;
                                           break;
                                 }
                          }
                          else {
                              if (
    strcmp($_FILES['img'.$i]['name'],'') != '0') {
                          
                                
    $newFile $newDir basename$_FILES['img'.$i]['name']); 
        
                                if ( 
    $_FILES['img'.$i]['size'] <= 512000) {
                                    echo 
    $newFile;
                                    echo 
    ' tmp_name: '.$_FILES['img'.$i]['tmp_name'];
                                    if(
    move_uploaded_file($_FILES['img'.$i]['tmp_name'], $newFile)) {
                                       echo 
    'ok';
                                    } else{
                                        echo 
    '<p class="error">ERRORE: Si &egrave; verificato un errore durante il salvataggio del file ' $_FILES['img'.$i]['tmp_name'] . '</p>';
                                    }
                                } else {
                                    echo 
    '<p class="error">ERRORE: I file caricati non devono essere pi&ugrave; pesanti di 50000KB</p>';
                                }
                              }
                          }
                      } 

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    3
    allora ho provato ad aumentare la grandezza dell'input MAX_FILE_SIZE del form o a rimuoverlo direttamente, ma la situazione non cambia.

  4. #4
    Hai rimosso ENTRAMBI i campi hidden MAX_FILE_SIZE oppure solo uno dei due?

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    3
    grandeeeeee! mica l'avevo visto!
    mo funziona il tutto, grazie

    ciao ciao

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.