Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
de:create:functions:markfail [26.11.2016 14:55] – admin | de:create:functions:markfail [28.06.2021 18:04] (aktuell) – [Unterschiedliche Feedback-Texte] sophia.schauer | ||
---|---|---|---|
Zeile 9: | Zeile 9: | ||
Die Verwendung von '' | Die Verwendung von '' | ||
- | ===== Beispiel 1 ===== | + | ===== Mindestens ein Feld ausgefüllt |
Im folgenden Beispiel wird auf Seite 1 des Fragebogens abgefragt, wie viele Stunden und Minuten eine Person pro Tag fernsieht, und zwar mit den offenen Texteingabefeldern " | Im folgenden Beispiel wird auf Seite 1 des Fragebogens abgefragt, wie viele Stunden und Minuten eine Person pro Tag fernsieht, und zwar mit den offenen Texteingabefeldern " | ||
Zeile 28: | Zeile 28: | ||
- | ===== Beispiel 2 ===== | + | ===== Mehrere Items prüfen |
Auch hier werden Stunden, Minuten und eine Residualoption abgefragt wie in Beispiel 1. Diesmal allerdings in einer kombinierten Frage für 10 verschiedene Medienangebote. Die Stunden werden in der ersten Spalte (Frage " | Auch hier werden Stunden, Minuten und eine Residualoption abgefragt wie in Beispiel 1. Diesmal allerdings in einer kombinierten Frage für 10 verschiedene Medienangebote. Die Stunden werden in der ersten Spalte (Frage " | ||
Zeile 51: | Zeile 51: | ||
} | } | ||
</ | </ | ||
+ | |||
+ | |||
+ | ===== Unterschiedliche Feedback-Texte ===== | ||
+ | |||
+ | Mitunter sollen die Fehlermeldungen genauer auf die fehlenden Variablen angepasst werden. Der folgende PHP-Code demonstriert, | ||
+ | |||
+ | <code php> | ||
+ | // Variablen und zugehörige Fehlertexte | ||
+ | $checks = [ | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | // u.s.w. | ||
+ | ]; | ||
+ | |||
+ | // Alle Variabeln überprüfen, | ||
+ | $messages = []; | ||
+ | foreach ($checks as $variable => $text) { | ||
+ | $antwort = value($variable); | ||
+ | if ((trim($antwort) === '' | ||
+ | markFail($variable); | ||
+ | $messages[] = $text; | ||
+ | } | ||
+ | } | ||
+ | |||
+ | // Ggf. Fehlermeldungen anzeigen und Seite wiederholen | ||
+ | if (!empty($messages)) { | ||
+ | $messages = array_unique($messages); | ||
+ | html('< | ||
+ | foreach ($messages as $text) { | ||
+ | text($text, ' | ||
+ | } | ||
+ | html('</ | ||
+ | repeatPage(); | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Der PHP-Code besteht aus drei Teilen. Im ersten Teil werden in einem Array die zu prüfenden Variablen definiert und welche Fehlermeldung jeweils angezeigt werden soll, wenn die Variable nicht beantwortet wird. | ||
+ | |||
+ | Im zweiten Teil werden dann in einer FOR-Schleife alle Variablen einzeln geprüft. Das '' | ||
+ | |||
+ | Im dritten Teil wird dann geprüft, ob Meldungen im Array '' |