Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungNächste ÜberarbeitungBeide Seiten der Revision | ||
de:create:feedback-correct [30.08.2021 17:42] – admin | de:create:feedback-correct [10.06.2022 12:15] – [Mehrfachauswahl] admin | ||
---|---|---|---|
Zeile 76: | Zeile 76: | ||
<code php> | <code php> | ||
- | $answer | + | $antwort |
- | $correct | + | $korrekt |
if ($antwort == $korrekt) { | if ($antwort == $korrekt) { | ||
text(' | text(' | ||
Zeile 95: | Zeile 95: | ||
<code php> | <code php> | ||
- | $answer | + | $antwort |
- | $correct | + | $korrekt |
if ($antwort == $korrekt) { | if ($antwort == $korrekt) { | ||
text(' | text(' | ||
Zeile 134: | Zeile 134: | ||
Die Reaktion auf eine richtige oder falsche Antwort kann ganz unterschiedlich gestaltet werden. Wesentliche Bausteine sind: | Die Reaktion auf eine richtige oder falsche Antwort kann ganz unterschiedlich gestaltet werden. Wesentliche Bausteine sind: | ||
- | * Die PHP-Funktion '' | + | * Die PHP-Funktion '' |
* Die PHP-Funktion '' | * Die PHP-Funktion '' | ||
* Die PHP-Funktion '' | * Die PHP-Funktion '' | ||
* Die PHP-Funktionen '' | * Die PHP-Funktionen '' | ||
+ | |||
+ | |||
+ | ==== Einen Text anzeigen ==== | ||
+ | |||
+ | Die einfachste Variante, nämlich einen Text "Ihre Antwort war richtig" | ||
+ | |||
+ | Wenn Sie im Fragenkatalog in eine Rubrik Ihrer Wahl einen //Text hinzufügen// | ||
+ | |||
+ | Wenn Sie den Text etwas ansprichsvoller gestalten möchten, wählen bei // | ||
+ | |||
+ | <code html> | ||
+ | <div style=" | ||
+ | Ihre Antwort ist richtig. | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | Zur weiteren Gestaltung können Sie auch Bilder verwenden, siehe [[: | ||
+ | |||
+ | Die Einbindung des Textes erfolgt, wie oben gezeigt, mittels '' | ||
+ | |||
+ | Die [[: | ||
+ | |||
+ | <code php> | ||
+ | if ($allRight) { | ||
+ | text(' | ||
+ | } else { | ||
+ | text(' | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Weiter-Knopf blockieren ==== | ||
+ | |||
+ | Mit der Funktion '' | ||
+ | |||
+ | <code php> | ||
+ | if ($allRight) { | ||
+ | text(' | ||
+ | } else { | ||
+ | text(' | ||
+ | option(' | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Direkt zur vorigen Seite springen ==== | ||
+ | |||
+ | Mit der Funktion '' | ||
+ | |||
+ | <code php> | ||
+ | if (!$allRight) { | ||
+ | repeatPage(' | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Die positive Meldung wäre in diesem Fall obsolet. | ||
+ | |||
+ | |||
+ | ===== Detailliertes Feedback ===== | ||
+ | |||
+ | Etwas aufwändiger ist es, wenn man die Frage und die falschen und richtigen Antworten direkt als Feedback zeigen möchte. Der folgende PHP-Code prüft zunächst die Antworten auf unterschiedliche Fragen " | ||
+ | |||
+ | <code php> | ||
+ | // Hier die Fragen und die korrekten Antworten eintragen | ||
+ | $antworten = [ | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ]; | ||
+ | |||
+ | // Hier folgt der PHP-Code für die Anzeige | ||
+ | foreach ($antworten as $frage => $correct) { | ||
+ | html(' | ||
+ | <div class=" | ||
+ | <div class=" | ||
+ | '); | ||
+ | $antwort = value($frage); | ||
+ | if ($antwort == $correct) { | ||
+ | html('< | ||
+ | } else { | ||
+ | html('< | ||
+ | html('< | ||
+ | } | ||
+ | html('</ | ||
+ | } | ||
+ | |||
+ | // Hier das Layout | ||
+ | pageCSS(' | ||
+ | div.question { margin-bottom: | ||
+ | div.question div.text { font-weight: | ||
+ | div.question div.correct { margin-bottom: | ||
+ | div.question div.wrong { margin-bottom: | ||
+ | div.question div.better { margin-bottom: | ||
+ | '); | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Viele Fragen ===== | ||
+ | |||
+ | Wenn eine größere Anzahl Fragen auf einzelnen Seiten präsentiert werden soll, dann kommt die Funktion '' | ||
+ | |||
+ | Im Fragebogen werden zwei Seiten benötigt. Die erste Seite bekommt im folgenden Beispiel die [[: | ||
+ | |||
+ | Auf der Seite " | ||
+ | |||
+ | <code php> | ||
+ | $fragen = [ | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ]; | ||
+ | registerVariable($fragen); | ||
+ | |||
+ | $i = loopToPage(' | ||
+ | |||
+ | // Frage anzeigen | ||
+ | $frageIDs = array_keys($fragen); | ||
+ | $frageID = $frageIDs[$i]; | ||
+ | question($frage); | ||
+ | </ | ||
+ | |||
+ | Auf der zweiten Seite " | ||
+ | |||
+ | <code php> | ||
+ | $i = loopIndex(); | ||
+ | $frageIDs = array_keys($fragen); | ||
+ | $frageID = $frageIDs[$i]; | ||
+ | |||
+ | $correct = $fragen[$frageID]; | ||
+ | $answer | ||
+ | if ($answer == $correct) { | ||
+ | text(' | ||
+ | } else { | ||
+ | text(' | ||
+ | } | ||
+ | </ |