Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
de:create:functions:repeatpage [13.07.2020 21:52] – [Beispiel 2] adminde:create:functions:repeatpage [15.05.2024 19:17] (aktuell) – [Beispiel 2] admin
Zeile 26: Zeile 26:
 ===== Beispiel 2 ===== ===== Beispiel 2 =====
  
-Mithilfe von repeatPage() ist es ebenso möglich, einmalig nachzuhaken, wenn der Befragte eine Frage nicht beantwortet. Im folgenden Beispiel wird überprüft, ob in der Auswahlfrage ''BB01'' eine gültige Option gewählt wurde und ob die Items der Skala ''BC01'' vollständig beantwortet wurden.+Mithilfe von ''repeatPage()'' ist es ebenso möglich, einmalig nachzuhaken, wenn der Befragte eine Frage nicht beantwortet. Im folgenden Beispiel wird überprüft, ob in der Auswahlfrage ''BB01'' eine gültige Option gewählt wurde und ob die Items der Skala ''BC01'' vollständig beantwortet wurden.
  
-Wenn eine der Fragen nicht vollständig beantwortet wurde, wird der Textbaustein "error_missing" angezeigt und die Seite wiederholt. Allerdings nur einmalig, was durch ''registerVariable()'', die Variable ''$rPG6'' und das ''isset()'' zu Beginn sichergestellt wird.+Wenn eine der Fragen nicht vollständig beantwortet wurde, wird der Textbaustein "error_missing" angezeigt und die Seite wiederholt. Allerdings nur einmalig. Dies wird dadurch erreichtdass bei der ersten Wiederholung eine interne Variable "IV01_01" auf den Wert 2 gesetzt wird. Bitte legen Sie die [[:de:create:questions:internal|interne Variable]] vorab im Fragenkatalog anund verwenden Sie im Code statt "IV01_01" die Kennung Ihrer internen Variable. Wenn die Seite erneut aufgerufen wird, und die Variable den Wert 2 hat, wird die Antwortprüfung nicht mehr ausgelöst.
  
 Wenn sich die Fragen auf Seite 6 befinden, muss der folgende PHP-Code auf Seite 7 ganz oben platziert werden. Wenn sich die Fragen auf Seite 6 befinden, muss der folgende PHP-Code auf Seite 7 ganz oben platziert werden.
  
 <code php> <code php>
-// Nur wenn $repeatedPG6 noch nicht gesetzt ist, wird geprüft +// Nur wenn IV01_01 noch nicht gesetzt ist, wird geprüft 
-if (!isset($rPG6)) {+if (value('IV01_01', 'code:ifany'!= 2) {
   // Prüfen, ob in der Auswahl BB01 die Antwort fehlt (Code -9)   // Prüfen, ob in der Auswahl BB01 die Antwort fehlt (Code -9)
   $failBB01 = (value('BB01') == -9);   $failBB01 = (value('BB01') == -9);
Zeile 42: Zeile 42:
   if ($failBB01 || $failBC01) {   if ($failBB01 || $failBC01) {
     // Merken, dass Seite 6 wiederholt wird/wurde     // Merken, dass Seite 6 wiederholt wird/wurde
-    $rPG6 = true; +    put('IV01_01', 2);
-    registerVariable($rPG6);+
     // Vorhergehende Seite erneut anzeigen     // Vorhergehende Seite erneut anzeigen
     repeatPage('error_missing');     repeatPage('error_missing');
de/create/functions/repeatpage.1594669960.txt.gz · Zuletzt geändert: von admin
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC Attribution-Share Alike 4.0 International
Driven by DokuWiki