• User Newbie

    Creare una form in una tabella dinamica

    Ciao a tutti,
    ho la necessita' di aggiungere un form alla tabella dinamica sottostante in maniera tale da effettuare delle selezioni multiple tramite checkbox per ogni risultato (utenza) trovato.
    Il submit, consentira' di inviare una mail ad ogni utenza trovata.

    Qualcuno sa indicarmi come dovrei proseguire?

    $conn = mysql_connect($db_host,$db_user,$db_password) or die("Errore nella connessione a MySql: " . mysql_error());

    mysql_select_db($db_database, $conn) or die("Errore nella connessione al database" . mysql_error());

    $query = "SELECT uid FROM group_membership WHERE gid='6'";

    $result = mysql_query($query, $conn) or die("nessun risultato" . mysql_error());

    $tab.='<table width="100%" border="1">
    <tr>
    <td><div align="center">** Nominativo </div></td>
    <td><div align="center">
    Utenza </div></td>
    <td><div align="center">
    Indirizzo E-mail**</div></td>
    <td><div align="center">** Assente **</div></td>
    </tr>';

    while ($ris = mysql_fetch_array($result)) {

    $query1 = "SELECT uname, name, email FROM users WHERE uid='" . $ris['uid'] . "'" or die("Errore nella query " . mysql_error());
    $result1 = mysql_query($query1,$conn) or die("nessun risultato" . mysql_error());

    while ($ris1 = mysql_fetch_array($result1)) {

    $Nominativo= $ris1['name'];
    $Utenza= $ris1['uname'];
    $Email= $ris1['email'];

    $tab.='<tr>
    <td><div align="center">'.$Nominativo.' </div></td>
    <td><div align="center">'.$Utenza.' </div></td>
    <td><div align="center">'.$Email.' </div></td>
    <td><div align="center">** <input type="checkbox" name="select" value="selected"> **</div></td>

    </tr>';

    }

    }

    $tab.='</table>';

    echo $tab;

    ?>

    Grazie a tutti in anticipo! 🙂
    Wako


  • User Newbie

    Ragazzi ho modificato la riga della tabella dinamica in maniera tale che il valore del checkbox assuma l'indirizzo email a cui voglio inviare la comunicazione.
    La modifica è:

    $tab.='<tr>
    <td><div align="center">'.$Nominativo.' </div></td>
    <td><div align="center">'.$Utenza.' </div></td>
    <td><div align="center">'.$Email.' </div></td>
    <td><div align="center">** <input type="checkbox" name="select" value='.$Email.'> **</div></td>

    </tr>';

    Credo che sia fatto bene così.
    Ora devo soltanto scrivere la form il cui submit, consente di mandare una mail.
    Qualcuno mi da' un suggerimento?

    Ciao! 🙂


  • Super User

    ora non ho tempo ma ti dico a grandi linee quello che devi fare.

    Crei la form dove il post metod richiama la pagina mail.php

    in mail.php hai i vari parametri (tra cui la mail), e tramite la funzione [url=http://it.php.net/manual/en/function.mail.php]mail() invii la mail.

    Ci sentiamo dopo che hai provato 😉


  • User Newbie

    Frazie tuonorosso,
    ma come posso scrivere la form nel codice php?
    Sembrerebbe banale la domanda, ma per chi è agli inizi...


  • Super User

    non capisco il problema:

    $tab.='<FORM ACTION="mail.php" METHOD=POST>
    <tr> 
    <td><div align="center">'.$Nominativo.' </div></td> 
    <td><div align="center">'.$Utenza.' </div></td> 
    <td><div align="center">'.$Email.' </div></td> 
    <td><div align="center">** <input type="checkbox" name="select" value='.$Email.'> **</div></td> 
    
    </tr><INPUT TYPE=submit NAME=Invia VALUE="Invia">
    </FORM>'; 
    

    L'ho scritta al volo, prova e fammi sapere 😉

    CIAO!


  • Super User

    Non avendo sott'occhio l'intera pagina è molto difficile dirti il perchè di questi errori.

    Fai un paio di prove, magari fai una cella e in questa metti il form e dentro il form una tabella con i vari campi, in questo modo non dovresti avere piu problemi.

    Facci sapere
    :ciauz:


  • Super User

    ma hai cancellato un post?


  • User Newbie

    Ho ricompilato giustamente come hai suggerito tu:

    $tab.='<form action="invio.php" method="post">
    <tr>
    <td><div align="center">'.$Nominativo.' </div></td>
    <td><div align="center">'.$Utenza.' </div></td>
    <td><div align="center">'.$Email.' </div></td>
    <td><div align="center">** <input type="checkbox" name="select" value= '.$Email.'> **</div></td>
    </tr>
    <INPUT TYPE="submit" NAME="submit" VALUE="Invia Comunicazione di Assenza">
    </form>';

    Ma alla fine mi vengono restituiti 2 pulsanti di submit sopra la tabella. Perchè?
    Poi come posso fare in modo da mandare soltanto le email alle utenze che hanno il checkbox fleggato?


  • Super User

    Per il doppio tasto ti ho risposto sopra

    Per il controllo checkbox mi pare che la variabile prenda valore 0 o 1 in caso di check.

    Ciao

    PS: ti suggerisco cmq di usare [url=www.google.it]Google per alcune domande molto semplici in quanto trovi tutto e subito 😉


  • User Newbie

    Si ho cancellato un mio post immediatamente subito averlo postato.

    Non riesco a trovare la tua risposta in merito al doppio tasto del submit.
    La riscriveresti?

    Non so se è veramente semplice come dici riguardo i checkbox.
    Io vorrei che per ogni checkbox fleggato (inerente ad ogni utente trovato dalla query) tramite il pulsante submit, mi invia una singola mail verso ogni utente.
    E' facile? :bho: