Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    346

    Ennesimo Upload multiplo

    Scusate ma oggi sono un vero disastro!
    Ho controllato e effettuato una ricerca su upload multipli e miso no uscite diverse cosine, ma non riesco ad implementarle per applicarle alla mia pagina.
    in pratica
    Devo riuscire ad effettuare un update di uno stesso campo su + righe, a seconda del check spuntato.
    (i destinatari appartenenti alla categoria della pagina di arrivo una volta che vengono spuntati non verranno inseriti come destinatari per la newsletter)

    arrivo da questa pagina:
    Codice PHP:
    <select name="destinatario" class="news_input">
                                    <option value="" selected>Seleziona una categoria di destinatari</option>
                                    <option value="prova">Prova</option>
                                    <option value="tutti">Tutti</option>
    <?
                                    $query2 
    "select *
                                    from tabella
                                    order by categoria"
    ;
                                    
    $result2 mysql_query($query2$db);
                                    if (
    $result2) {
                                        if  ( 
    mysql_num_rows($result2) > ) {
                                            while ( 
    $row2 mysql_fetch_array($result2)) {
    ?>                                            <option value="<? echo $row2["id_cat"]; ?>"><? echo $row2["categoria"]; ?></option>
    <?
                                            
    }
                                        }
                                    }
    ?>
                                </select>
                            </td>
                        </tr>    

                        
                    </table>
                    </div>
                    <input type="hidden" name="id" value="<? echo $row['id']; ?>">
                    <input type="hidden" name="azione" value="invia">
                    <input type="submit" value="Modifica Destinatari">
                    </form>

    questa la pagina che riceve i dati e dove faccio l'update:
    Codice PHP:
    $op=$_GET['op'];
    if ($op=="update") 

        $azione=$_POST['azione'];
        $id=$_POST['id'];
        $des=$_POST['des'];
        $check=$POST['check'];
        echo $check." visualizzo gli id delle email da non inviare";
        
        impostando a 0 quel campo al momento dell'invio non viene inserito come destinatario
    //$query= "update table set controllo='0' where id=id della persona con il check spuntato'";
    //$result =mysql_query($query);

        header("Location: pagina_di_invio_newsletter.php?azione=$azione&id=$id&des=$des");
    }

    //qui la lista con i vari check


         $azione=$_POST['azione'];
        $id=$_POST['id'];
        $des=$_POST['destinatario'];

    echo " azione =".$azione;
    echo "
     id della news =".$id;
    echo "
     categoria della destinazione =".$des;
     <form action="<? echo $_SERVER['PHP_SELF'];?>?op=update" method="post" >
    <?
    $query
    "select * from table_email where id_cat='$des' ";
     
    $result mysql_query($query) or die("Errore durante l'interrogazione al database");

         
    $num=mysql_num_rows($result);
        for(
    $i=0$i<$num$i++)
        { 
            while(
    $record=mysql_fetch_array($result)) {
                
    $indirizzo_email $record["email"]; 
                
    $id $record["id"];
                
    $controllo $record["controllo"];
    ?>
    <tr>
    <td class="p3"><? echo $indirizzo_email?></td> <td><input type="checkbox" name="check<? echo $i ;?>" value="<? echo $id;?><? if($controllo!=1){?> checked  <? }?> /></td>
    </tr>
    <?
            
    }
        }
    ?>  
    <input type="hidden" name="des" value="<? echo $des;?>">
    <input type="hidden" name="azione" value="<? echo $azione;?>">
    <input type="hidden" name="id" value="<? echo $id;?>">
    <input type="submit" value="Aggiorna i destinatari">
    </form>
    come posso indicizzare i dati riceventi per poterli usare come campo indice per aggiornare il db??


  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    346
    Forse sono riuscito a fare qualcosa di + decente, ma ho un problmea nel momento in cui vado a riprendere il valore dei vari check con il ciclo for. chi sa dirmi come impostarlo??
    Codice PHP:
    $query = "select * from table where id= '" . $id . "' ";
    $result = mysql_query($query, $db) or die("Errore durante l'interrogazione al database");
         $num=mysql_num_rows($result);
        for($i=0; $i<$num; $i++)
        { 
            while($record=mysql_fetch_array($result)) {
                $indirizzo_email = $record["email"]; 
                $id_mail = $record["id"];
                $controllo = $record["controllo"];

    //è giusto come ho impostato il check (nome e value)?
    ?>
    <tr>
    <td class="p3"><? echo $indirizzo_email?></td> <td><input type="checkbox" name="check<? echo $i ;?>" value="<? echo $id_mail;?><? if($controllo!=1){?> checked  <? }?> /></td> 
    </tr>
    <?
            
    }
        }
    ?>  
    <input type="hidden" name="id_mail" value="<? echo $id_mail;?>">
    <input type="hidden" name="des" value="<? echo $des;?>">
    <input type="hidden" name="azione" value="<? echo $azione;?>">
    <input type="hidden" name="id" value="<? echo $id;?>">
    <input type="submit" value="Aggiorna i destinatari" />
    </form>
    ora la stessa pagina nel punto in cui faccio l'update:

    Codice PHP:
    $op=$_GET['op'];
    if (
    $op=="update") {
        
    $num=$_POST['num'];
        echo 
    " numero del ciclo $i ".$num;
        for(
    $i=0$i<$num$i++) 
        {
    //da qui non so come effettuare il recupero dati per fare l'update del valore controllo ed impostarlo a '0'

            
    if (isset($_POST['check'])){
        
        
    $id=$_POST['id'];
        
    $des=$_POST['des'];
        
    $query"update set controllo='0' where ... ";
        
    $result =mysql_query($query);
        }
        echo 
    " visualizzo gli id delle email da non inviare ".$id_mail;
        echo 
    "
    visualizzo l'id della news "
    .$id;
        echo 
    "
    visualizzo la categoria dei destinatari "
    .$des;
        
    }

        
    //@header("Location: newsletter.php?azione=$azione&id=$id&des=$des");
        //exit();

    qualcuno che sa come uscirne??

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    346

    forse ci siamo...

    ok! ora quasi che funziona,
    ...aggiorna... ma solo il primo ciclo, anche se stampa tutti gli id checkati correttamente.
    Codice PHP:
    $op=$_GET['op'];
    if (
    $op=="update") {

        
    $num=$_POST['num'];
        
    $des=$_POST['des'];
        
    $azione=$_POST['azione'];
        
    $id=$_POST['id'];
        
        echo 
    " numero del ciclo ".$num;
        echo 
    "
     categoria "
    .$des;
        echo 
    "
     azione "
    .$azione;
        echo 
    "
     id lettera "
    .$id;
        
        
        for(
    $i=0$i<$num$i++) 
        {    
            if (isset(
    $_POST['check'.$i])){
            
                
    $id_mail =$_POST['check'.$i];
                echo 
    $id_mail."id da utilizzare per ogni update ";
                
    $query"update table set controllo='0' where id='$id_mail' ";
                
    $result =mysql_query($query);
            echo 
    " visualizzo l'id della email da non inviare ".$id_mail."
    "
    ;
            }
        
        }    
    //chiudo ciclo for

        //@header("Location: newsletter.php?azione=$azione&id=$id&des=$des");
        //exit();

    il ciclo che invia il form con i check puntati è ils eguente:
    Codice PHP:
         $num=mysql_num_rows($result);
        for($i=0; $i<$num; $i++)
        { 
            while($record=mysql_fetch_array($result)) {
                $indirizzo_email = $record["email"]; 
                $id_mail = $record["id"];
                $controllo = $record["controllo"];
    ?>

    <form action="<? echo $_SERVER['PHP_SELF'];?>?op=update" method="post" >
    <tr>
    <td class="p3"><? echo $indirizzo_email?></td> <td><input type="checkbox" name="check<? echo $i ;?>" value="<? echo $id_mail;?><? if($controllo!=1){?> checked  <? }?> /></td>
    </tr>
    <?
            
    }
        }
    ?>  
    <input type="hidden" name="num" value="<? echo $num;?>"> 
    <input type="hidden" name="id_mail" value="<? echo $id_mail;?>">
    <input type="hidden" name="des" value="<? echo $des;?>">
    <input type="hidden" name="azione" value="<? echo $azione;?>">
    <input type="hidden" name="id" value="<? echo $id;?>">
    <input type="submit" value="Aggiorna i destinatari" />
    </form>
    dai ragazzi...probabilmente mi sono fossilizzato su una cavolata... magari riuscite a vederla immediatamente!! :master: :master:

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    346

    errore mio scusate!!

    Innanzi tutto mi scuso con tutti coloro che sono andati alla ricerca dell'argomento UPLOAD, ma quello in cui io chiedevo aiuto e me ne riscuso, era UPDATE!!! :berto: soltanto ora me ne sono accorto dell'errore madornale!! scusatemi... magari se un moderatore lo può correggere lo ringrazio! si tartta di UPDATE e non UPLOAD . cmq nonostante molti altri tentativi il problmea persiste, enon riesco asistemarlo! chi può darmi una mano??
    Spero che il problema sia spiegato bene!

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.