IF-Bedingungen und Checkboxen

patka

Grünschnabel
Hallo Zusammen,

Anfängerfrage:
ich bastel gerade an einem Frage/Antwort Skript und komme mit der IF-Bedingung nicht zurecht.

Ich habe 4 mögliche Anworten, zwei davon sind richtig.
Das wird über Checkboxen realisiert.

Antwort 1 und Antwort 3 sind die richtigen und die nächste Frage würde kommen, wenn diese richtig angewählt wurden. Die alte Frage verschwindet.

Eine Fehlermeldung bzw. die Frage bleibt, wenn Antwort 2 oder 4 gewählt wurde.

Nun meine Frage: Wie mache ich das mit IF wenn ich nur Antwort 1 anklicke oder alle Checkboxen anwähle? Dann habe ich das Problem, dass die alte Frage bleibt und die neue Frage erscheint!

Vielen Dank für Hilfe und Tipps!

Gruss Danny

Hier ein Beispiel des Skripts:
PHP:
<form method="POST" action="<?=$PHP_SELF;?>">
<?php
$text3 = "<p><font face=\"Arial\" size=\"3\" color=\"#990000\"><b>Frage 3:</b>
 Wieviel Meter misst das h&ouml;chste Geb&auml;ude der Welt und wo steht es?</font><FONT 
face=\"Arial\" size=\"3\"><br> 
    </FONT><FONT 
face=\"Arial\" size=\"2\">Bei richtigen Lösungen Haken setzen!<br>&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT><FONT 
face=\"Arial\" size=\"3\"><input type=\"checkbox\" name=\"grenzwert1\" value=\"1\"> 
    </FONT><FONT 
face=\"Arial\" size=\"2\">Taipeh/Taiwan;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type=\"checkbox\" name=\"grenzwert2\" value=\"2\"> 
    490m;<br> 
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type=\"checkbox\" name=\"grenzwert3\" value=\"3\"> 
    Honkong;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type=\"checkbox\" name=\"grenzwert4\" value=\"4\"> 
   508m;<input type='submit' value='Go'></form></p>";

$text4 ="Hier kommt die n&auml;chste Frage";


if (empty($_POST) OR $_POST['grenzwert2']== 2 OR $_POST['grenzwert4']== 4) { echo "$text3";}
if ($_POST['grenzwert1']== 1 AND $_POST['grenzwert3']== 3 OR $_POST['grund3'] == 3 OR $_POST['grund7'] == 7) {

echo "$text4";}	
?>
 
Du solltes als Feldnamen ein Array benutzen, also als name
grenzwert[]. So:

<input type=\"checkbox\" name=\"grenzwert[]\" value=\"3\">

dann als Auswertung sowas =

$grenzwert = $_POST['grenzwert'];
if (size($genzwert) == 2 and $grenzwert[0] == 2 and $genzwert[1] == 4) {
echo "richtig";
} else {
echo "falsch";
}

Der Grund ist der das nur Checkboxen übertragen werden die angekreutzt sind die anderen nicht
 
Wozu size?

Hallo,
vielen Dank für Deine Antwort.

Wozu steht das size? Muss ich noch eine Funktion definieren

Viele Grüße Danny
 
Dat isses ja...

Sorry, but the function size is not in the online manual.

Deshalb meine Frage nach dem Size ?!
Oder habe ich an ner falschen Stelle gesucht?

Gruß Danny
 
Zurück