Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Ciclo While + Form: HELP!

    Ciao a tutti!
    Allora ho un form che fa tante richieste di input text quante richieste dall'user,
    ciò è dato dalla variabile $dm,..
    codice:
    echo "<form method='post' action='index.php?pag=test&go=addok'>";
    $dm="1";
    while($dm<=$ndmd){
    echo"<table border='0'>";
    $domanda = "domanda_" . "$dm";
    $r1 = "r1_" . "$dm";
    $r2 = "r2_" . "$dm";
    $r3 = "r3_" . "$dm";
    $r4 = "r4_" . "$dm";
    $p1 = "p1_" . "$dm";
    $p2 = "p2_" . "$dm";
    $p3 = "p3_" . "$dm";
    $p4 = "p4_" . "$dm";
    echo"
    <tr><td><font size='4pt'>Domanda N°$dm:</font></td></tr>
    <tr><td><textarea name='domanda_$dm' cols='38' rows='2'></textarea></td></tr>
    </table>
    <table border='0'>
    <tr><td></td><td align='center'><font size='3pt'>Risposte:</font></td><td align='center'><font size='3pt'>Punteggio:</font></td></tr>
    <tr><td>N°1</td><td><input type='text' name='$r1' size='40' maxlenght='100'></td><td><input type='text' name='$p1' size='2' maxlenght='2'></td></tr>
    <tr><td>N°2</td><td><input type='text' name='$r2' size='40' maxlenght='100'></td><td><input type='text' name='$p2' size='2' maxlenght='2'></td></tr>
    <tr><td>N°3</td><td><input type='text' name='$r3' size='40' maxlenght='100'></td><td><input type='text' name='$p3' size='2' maxlenght='2'></td></tr>
    <tr><td>N°4</td><td><input type='text' name='$r4' size='40' maxlenght='100'></td><td><input type='text' name='$p4' size='2' maxlenght='2'></td></tr>
    </table>";
    $dm++;
    } // CHIUSURA WHILE
    echo"<table border='0'>";
    echo"<input type='hidden' name='ndmd' value='$ndmd'>";
    echo"<input type='hidden' name='testid' value='$testid'>";
    echo"<tr><td></td><td align='left'><input type='submit' value='Crea nuovo test!'><input type='reset' value='Cancella'></td><td></td></tr>";
    echo"</table></form>";
    L'attributo name dell'input è dato dalle variabili r1,r2,ecc..
    Adesso nella pagina in cui vengono inviati i dati, dovrei aggiungerli nel DB, ed uso un altro ciclo, ma non riesco a farlo funzionare...
    codice:
    if($go == "addok"){
    $dm="1";
    while($dm<=$ndmd){
    $query = "INSERT INTO $testtable (testid, domanda, r1, p1, r2, p2, r3, p3, r4, p4) VALUES ('$testid', '$domanda', '$r1', '$p1', '$r2', '$p2', '$r3', '$p3', '$r4', '$p4')";
    $result = mysql_query($query, $conn) or die("Errore nella query" . mysql_error());
    unset($query);
    if(!$result){
    echo "<h2>Errore nell'aggiunta della domanda N°$dm. Perfavore Riprova, se l'errore persiste non esitare a contattarci!</h3>";
    } else {
    echo"<font size='4pt'>Aggiunta domanda N°$dm : OK</font>
    ";
    } // CHIUSURA ELSE $RIS
    $dm++;
    } // CHIUSURA WHILE
    } // CHIUSURA ADDOK
    E' ovvio che manca qualcosa..
    devo fargli capire che $r1 deve equivalere a $r1_1, $r1_2, ecc (insomma $r1_$dm)..
    Ma come faccio?! ne ho provate tante...x es:
    $addr1 = "$"."r1"."_"."$dm";
    Ma niente, perchè il valore della variabile diventa propio $r1_1...

    Perfavore aiutatemi, non so come andare avanti...

    Grazie..
    The Happyest Times
    Are The Ones
    That Are Shared

  2. #2
    Nessuno mi sa risp?
    The Happyest Times
    Are The Ones
    That Are Shared

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.