2009-06-30 21 views
2

schlug meinen Kopf gegen die Wand für etwas scheinbar tot einfach.wählen Sie mehrere Optionen

Hier ist sie:

<html> 
    <head></head> 
    <body> 
     <form method="post" action="action.php"> 
      <div><input type="checkbox" name="test" value="Newspaper"> <span >Newspaper</span></div> 
      <div><input type="checkbox" name="test" value="PC"> <span >PC</span></div> 
      <div><input type="checkbox" name="test" value="Home"> <span >Home</span></div> 
      <div><input type="checkbox" name="test" value="Dont_know"> <span >dnunno</span></div> 
      <input type="submit" name="Submit" value="send"> 
     </form> 
    </body> 
</html> 

Aber wenn ich wählen Sie mehr als eine Option. Ich sehe in meiner print_r($_POST); Anweisung nur die letzte ausgewählte Option anstelle aller ausgewählten Optionen. Wie soll ich damit umgehen?

update: Ich überprüfte den Rest meines Codes und ich sah, dass dies durch einige JavaScript getan wird.

else if (aform.validatorArr[i][4] == "checkbox") { 
    var fvs = ""; 
    eval("var chkbArray=aform." + aform.validatorArr[i][1] + ";"); 
    if (aform.validatorArr[i][2] == "cb_true") { 
     for (k = 0; k < chkbArray.length; k++) { 
      if (chkbArray[k].checked) { 
       fvs += chkbArray[k].value; 
       console.log(fvs); 
      } 
     } 
     if (fvs == false) { 
      s += aform.validatorArr[i][3] + "\n"; 
     } 
    } 
} 

Deshalb ist das [] nicht in meinem HTML hinzugefügt. Aber wie könnte ich diesen Code ändern, so dass er alle Optionen übernimmt?

Antwort

15

Put [] nach dem Namen:

<input type="checkbox" name="test[]" value="Newspaper"> 

Siehe PHP FAQ für weitere Details.

+0

Dann können Sie foreach ($ _ POST ["test"] als $ test) {...} – Sampson

+0

danke ich habe meinen Beitrag aktualisiert. – sanders

+0

@sanders - der von Ihnen gepostete Code ist ein Auszug und es ist wirklich schwer zu verstehen, ohne den Rest des Geschehens zu sehen. Von dem, was ich sammeln kann, ist die fvs-Variable eine Verkettung aller Werte aus den ausgewählten Kontrollkästchen, aber ich kann nicht sehen, wohin das geht. – karim79

Verwandte Themen