Hallo,
ich möchte für ein paar Freunde ein kleines Quiz machen. Keine große Sache. Ich habe dazu 20 Fragen in einem Array, von denen 10 angezeigt werden.
$fragen = array(1=>"Frage1",2=>"Frage2",3=>"Frage..usw");
aber wie stelle ich sicher, das eben "name" immer mit der richtigen Antwort gefüllt ist? Die Antwort ist immer ein Wort oder eine Zahl.
indem Du Dein Array entsprechend aufbaust, zum Beispiel:
$fragen = array(
1 => array(
'frage' => <Text der Frage>,
'antworten' => array(
1 => array(
'antwort' => <Text der Antwort>,
'richtig' => True oder False
),
2 => array(
'antwort' => <Text der Antwort>,
'richtig' => True oder False
)
#, [...] weitere Antworten
)
),
2 => array(
'frage' => <Text der Frage>,
'antworten' => array(
1 => array(
'antwort' => <Text der Antwort>,
'richtig' => True oder False
),
2 => array(
'antwort' => <Text der Antwort>,
'richtig' => True oder False
)
#, [...] weitere Antworten
)
)
#, [...] weitere Fragen
)
so hast Du zusammen, was zusammengehört und kannst die Antworten im Formular ebenfalls mit einer foreach-Schleife zusammenbauen.
Nimmst Du für die Antworten ein eigenes eigenständiges Array, so wird die Wartung fehleranfälliger (solange Du die Arrays von Hand schreibst).
Unterscheidest Du zwischen Fragen, bei denen nur eine Antwort möglich ist (Radiobutton) und solchen mit mehreren richtigen Antworten (Checkboxen) oder gar der direkten Eingabe in ein Textfeld, so füge einen weiteren Eintrag
'typ' = ...
hinzu.
Freundliche Grüße
Vinzenz