Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende Überarbeitung | |||
de:create:functions:looppage [17.09.2019 14:01] – admin | de:create:functions:looppage [21.11.2022 20:06] (aktuell) – Workaround für setPageOrder() admin | ||
---|---|---|---|
Zeile 26: | Zeile 26: | ||
**Hinweis: | **Hinweis: | ||
- | ===== Beispiel: | + | ===== Anwendungsbeispiele ===== |
+ | |||
+ | ==== Alle Fragen einer Rubrik in zufälliger Abfolge ==== | ||
<code php> | <code php> | ||
Zeile 42: | Zeile 44: | ||
- | ===== Beispiel: | + | ==== Fragen in zufälliger Abfolge präsentieren II ==== |
<code php>// PHP-Code auf einer der ersten Seiten im Fragebogen | <code php>// PHP-Code auf einer der ersten Seiten im Fragebogen | ||
Zeile 61: | Zeile 63: | ||
- | ===== Beispiel: | + | ==== Fragen in zufälliger Abfolge mit Verweildauer ==== |
**Hinweis: | **Hinweis: | ||
Zeile 85: | Zeile 87: | ||
question($fragen[5]); | question($fragen[5]); | ||
</ | </ | ||
+ | |||
+ | |||
+ | ===== Workaround for Seitenabfolge ===== | ||
+ | |||
+ | Innerhalb einer Seitenabfolge, | ||
+ | |||
+ | Wenn Sie eine Seite innerhalb einer Seitenabfolge wiederholen möchten, dann legen Sie diese Wiederholung bereits in der Seitenabfolge fest. Im folgenden Beispiel wird z.B. die Seite mit der Kennung " | ||
+ | |||
+ | <code php> | ||
+ | setPageOrder([' | ||
+ | </ | ||
+ | |||
+ | Um zu ermitteln, in welcher Wiederholung sich die Seite gerade befindet, können Sie die Funktion '' | ||
+ | |||
+ | Hier könnte man einfach 3 subtrahieren. Aber wenn die Wiederholung an einer anderen Stelle im Fragebogen erscheint, können Sie mittels '' | ||
+ | |||
+ | <code php> | ||
+ | // Die aktuelle Position ermitteln | ||
+ | $pos = loopIndex(); | ||
+ | // Prüfen, ob wir die erste Position dieser Seite schon kennen | ||
+ | if (!isset($firstIndex)) { | ||
+ | $firstIndex = $pos; | ||
+ | registerVariable($firstIndex); | ||
+ | } | ||
+ | // Die Different in Variable $i speichern | ||
+ | // dies entspricht in anderen Codes dem $i = loopPage(...) | ||
+ | $i = $pos - $firstIndex; | ||
+ | </ | ||
+ | |||
+ | Sollten Sie mehrere (unterschiedliche) Seiten wiederholen, |