Hallöchen zusammen,
ich bastel gerade an einem Frage-Antwort-Ankeruz-Skript.
Dabei werden aus 16 Antwortmöglichkeiten insgesamt 4 ausgewählt.
Von diesen Möglichkeiten treffen 4-8 zu.
Nun bin ich am Überlegen:
Wie viele richtige Antworten lasse ich zu?
Ursprünglich wollte ich alle Möglichkeiten von 0 bis 4 richtige Antworten zulassen.
Das Problem ist die Abschließende Abfrage.
Es können 0, 1, 2, 3 oder 4 Antworten angekreuzt sein. Für alle Fälle wird ein Wert Übergeben, oder bei mehreren Möglichkeiten auch mehrere Werte.
Das wären dann insgesamt 16 mögliche Fälle (4 angekreuzte Antworten, 3 angekreuzte Antworten und schließlich noch die Möglichkeiten welche Antworten)
Dies wäre mit einer recht großen if Struktur lösbar, aber durchaus umständlich.
Geht das eleganter?
Hier ein Beispielcode:
$antw wird vorher jeweils definiert.
Aber das muss doch eleganter gehen ...
Wird die Internetseite durch so eine Struktur nicht unglaublich langsam?
Kann man den localhost vom Ladetempo her stellvertretend auf eine tatsächliche Homepage übertragen oder ist das nur für die Funktionsweise sinnvoll? (die Frage ist mir gerade noch so eingefallen)
ich bastel gerade an einem Frage-Antwort-Ankeruz-Skript.
Dabei werden aus 16 Antwortmöglichkeiten insgesamt 4 ausgewählt.
Von diesen Möglichkeiten treffen 4-8 zu.
Nun bin ich am Überlegen:
Wie viele richtige Antworten lasse ich zu?
Ursprünglich wollte ich alle Möglichkeiten von 0 bis 4 richtige Antworten zulassen.
Das Problem ist die Abschließende Abfrage.
Es können 0, 1, 2, 3 oder 4 Antworten angekreuzt sein. Für alle Fälle wird ein Wert Übergeben, oder bei mehreren Möglichkeiten auch mehrere Werte.
Das wären dann insgesamt 16 mögliche Fälle (4 angekreuzte Antworten, 3 angekreuzte Antworten und schließlich noch die Möglichkeiten welche Antworten)
Dies wäre mit einer recht großen if Struktur lösbar, aber durchaus umständlich.
Geht das eleganter?
Hier ein Beispielcode:
PHP-Code:
echo '<html><form action="ankreuzaufgaben.php" method="post">
<input type="checkbox" name="auswahl1" value="'.$antw_1.'"/>'.$antw_1.'<br/>
<input type="checkbox" name="auswahl2" value="'.$antw_2.'"/>'.$antw_2.'<br/>
<input type="checkbox" name="auswahl3" value="'.$antw_3.'"/>'.$antw_3.'<br/>
<input type="checkbox" name="auswahl4" value="'.$antw_4.'"/>'.$antw_4.'<br/>
<input type="submit" value="Senden"/></html>';
//Ausgabemöglichkeiten Nach Wahl der Antwort
if(isset($_POST['auswahl1'])){/*Code*/}
if(isset($_POST['auswahl2'])){/*Code*/}
if(isset($_POST['auswahl3'])){/*Code*/}
if(isset($_POST['auswahl4'])){/*Code*/}
if(isset($_POST['auswahl1'] && $_POST['auswahl2'])){/*Code*/}
if(isset($_POST['auswahl1'] && $_POST['auswahl3'])){/*Code*/}
if(isset($_POST['auswahl1'] && $_POST['auswahl4'])){/*Code*/}
if(isset($_POST['auswahl2'] && $_POST['auswahl3'])){/*Code*/}
if(isset($_POST['auswah2'] && $_POST['auswahl4'])){/*Code*/}
//Und so weiter
Aber das muss doch eleganter gehen ...
Wird die Internetseite durch so eine Struktur nicht unglaublich langsam?
Kann man den localhost vom Ladetempo her stellvertretend auf eine tatsächliche Homepage übertragen oder ist das nur für die Funktionsweise sinnvoll? (die Frage ist mir gerade noch so eingefallen)
Kommentar