Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Gestione errori

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    43

    Gestione errori

    Ciao ragazzi, sto facendo una photogallery e devo avere la necessità di caricare anche 5 foto.
    Ho preparato questi due file, ma hanno dei difetti! (più avanti vi spiego il perché)

    Codice PHP:
    ...

    <
    form action="../setting.php?act=add&c=foto" enctype="multipart/form-data" method="post">
         <
    input type="file" name="allegato1" id="allegato1" />

         <
    input type="file" name="allegato2" id="allegato2" onClick="document.getElementById('ck_2').checked = ''" /> <input type="checkbox" id="ck_2" name="ck_2" checked="checked" /> Ignora?

         <
    input type="file" name="allegato3" id="allegato3" onClick="document.getElementById('ck_3').checked = ''" /> <input type="checkbox" id="ck_3" name="ck_3" checked="checked" /> Ignora?

         <
    input type="file" name="allegato4" id="allegato4" onClick="document.getElementById('ck_4').checked = ''" /> <input type="checkbox" id="ck_4" name="ck_4" checked="checked" /> Ignora?

         <
    input type="file" name="allegato5" id="allegato5" onClick="document.getElementById('ck_5').checked = ''" /> <input type="checkbox" id="ck_5" name="ck_5" checked="checked" /> Ignora?



    ... 
    Codice PHP:
    $db mysql_connect("$hostname_db","$username_db","$password_db") or die("Connessione non riuscita: " mysql_error());    
            
    mysql_select_db("$database_db"$db);
            
            
    $up1 $al1['name'];
            
    $up2 $al2['name'];
            
    $up3 $al3['name'];
            
    $up4 $al4['name'];
            
    $up5 $al5['name'];
            
            if (
    file_exists("gallery/foto/".$al1['name']))  
                { 
                for (
    $i 1$i 1000000000000000000$i++) { 
                    if (!
    file_exists("gallery/foto/".$up1)) 
                        {break;}
                    
    $up1 $i.$al1['name']; 
                    }
                }
            
    copy($al1['tmp_name'], "gallery/foto/".$up1) or die("Impossibile caricare l'allegato numero 1.");
                
            
    $query1 "INSERT INTO foto (src_foto, data_foto, ip_foto, id_album_foto) VALUES ('$up1', NOW(), '$ip', '$select_album')";
            if (
    mysql_query($query1)) {
                echo 
    "Foto numero [b]1[/b] caricata con successo!
    "
    ;
            }
            
            if (
    $ck_2 != '') {    
                if (
    file_exists("gallery/foto/".$al2['name']))  
                    { 
                    for (
    $i 1$i 1000000000000000000$i++) { 
                        if (!
    file_exists("gallery/foto/".$up2)) 
                            {break;}
                        
    $up2 $i.$al2['name']; 
                        }
                    }
                
    copy($al2['tmp_name'], "gallery/foto/".$up2) or die("Impossibile caricare l'allegato numero 2.");
                
                
    $query2 "INSERT INTO foto (src_foto, data_foto, ip_foto, id_album_foto) VALUES ('$up2', NOW(), '$ip', '$select_album')";
                if (
    mysql_query($query2)) {
                    echo 
    "Foto numero [b]2[/b] caricata con successo!
    "
    ;
                }
            }
                
            if (
    $ck_3 != '') {
                if (
    file_exists("gallery/foto/".$al3['name']))  
                    { 
                    for (
    $i 1$i 1000000000000000000$i++) { 
                        if (!
    file_exists("gallery/foto/".$up3)) 
                            {break;}
                        
    $up3 $i.$al3['name']; 
                        }
                    }
                
    copy($al3['tmp_name'], "gallery/foto/".$up3) or die("Impossibile caricare l'allegato numero 3.");
                
                
    $query3 "INSERT INTO foto (src_foto, data_foto, ip_foto, id_album_foto) VALUES ('$up3', NOW(), '$ip', '$select_album')";
                if (
    mysql_query($query3)) {
                    echo 
    "Foto numero [b]3[/b] caricata con successo!
    "
    ;
                }
            }
                
            if (
    $ck_4 != '') {
                if (
    file_exists("gallery/foto/".$al4['name']))  
                    { 
                    for (
    $i 1$i 1000000000000000000$i++) { 
                        if (!
    file_exists("gallery/foto/".$up4)) 
                            {break;}
                        
    $up4 $i.$al4['name']; 
                        }
                    }
                
    copy($al4['tmp_name'], "gallery/foto/".$up4) or die("Impossibile caricare l'allegato numero 4.");
                
                
    $query4 "INSERT INTO foto (src_foto, data_foto, ip_foto, id_album_foto) VALUES ('$up4', NOW(), '$ip', '$select_album')";
                if (
    mysql_query($query4)) {
                    echo 
    "Foto numero [b]4[/b] caricata con successo!
    "
    ;
                }
            echo 
    "<a href=\"foto.php?act=view\">Torna indietro!</a>";
            }

            if (
    $ck_5 != '') {
                if (
    file_exists("gallery/foto/".$al5['name']))  
                    { 
                    for (
    $i 1$i 1000000000000000000$i++) { 
                        if (!
    file_exists("gallery/foto/".$up5)) 
                            {break;}
                        
    $up5 $i.$al5['name']; 
                        }
                    }
                
    copy($al5['tmp_name'], "gallery/foto/".$up5) or die("Impossibile caricare l'allegato numero 5.");
                
                
    $query5 "INSERT INTO foto (src_foto, data_foto, ip_foto, id_album_foto) VALUES ('$up5', NOW(), '$ip', '$select_album')";
                if (
    mysql_query($query5)) {
                    echo 
    "Foto numero [b]5[/b] caricata con successo!
    "
    ;
                }
            } 
    Come vedete, per ogni input di file c'è (tranne il primo) un checkbox. Questo check mi servirà, poi, in setting.php per eseguire un eventuale upload. Se, ad esempio, carico solo tre foto, 2 check rimarranno flaggati e quindi 2 operazioni (la 4 e la 5 nel codice) non dovranno essere eseguite, no?

    Il problema, però, è che per controllare i check uso if ($ck_x != ''), ma anche se il check è flaggato mi esegue ciò che sta nell'if e quindi mi riporta all'errore: "Impossibile caricare il file numero 4" perché, effettivamente, al posto 4 non abbiamo inserito niente... come ovviare?

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    43
    Scusate, avevo risolto ma ha postato lo stesso :\

    Per chi fosse interessato:
    codice:
     if (!ck_1) .......
    è la soluzione

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.