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:rotation [11.12.2019 15:29] – [Zufällige Rotation] anna.kravchyk | de:create:rotation [06.03.2020 20:23] – admin | ||
---|---|---|---|
Zeile 21: | Zeile 21: | ||
- | ===== Rotation der Items oder Optionen einer Frage ===== | + | ===== Rotation der Items oder Optionen |
+ | |||
+ | ==== Rotation in einer Frage ==== | ||
Die Randomisierung oder Rotation von Items in einer Frage wird wie folgt aktiviert: | Die Randomisierung oder Rotation von Items in einer Frage wird wie folgt aktiviert: | ||
Zeile 37: | Zeile 39: | ||
- | ===== Manuelle Rotation von Items oder Optionen | + | ==== Manuelle Rotation von Items oder Optionen ==== |
Sie können die Items bzw. Optionen einer Frage auch mittels PHP-Code rotieren. Dazu wird zunächst mittels '' | Sie können die Items bzw. Optionen einer Frage auch mittels PHP-Code rotieren. Dazu wird zunächst mittels '' | ||
Zeile 63: | Zeile 65: | ||
- | ===== Parallele Rotation von zwei Fragen | + | ==== Parallele Rotation von Items in zwei Fragen ==== |
Mit der manuellen Rotation (s. oben) können Sie in zwei oder mehr Fragen dieselbe rotierte Item-Abfolge verwenden. Falls die Fragen auf unterschiedlichen Seiten stehen, verwenden Sie auch hierfür '' | Mit der manuellen Rotation (s. oben) können Sie in zwei oder mehr Fragen dieselbe rotierte Item-Abfolge verwenden. Falls die Fragen auf unterschiedlichen Seiten stehen, verwenden Sie auch hierfür '' | ||
Zeile 83: | Zeile 85: | ||
- | ===== Rotation von Items über mehrere Seiten | + | ==== Rotation von Items über mehrere Seiten ==== |
Falls Sie in einer Frage sehr viele Items haben, möchten Sie diese vielleicht auf mehrere Seiten verteilen. Normalerweise würden Sie das erledigen, indem Sie die Frage beim **Fragebogen zusammenstellen** mehrfach einfügen und jeweils bei den Anzeige-Einstellungen ({{: | Falls Sie in einer Frage sehr viele Items haben, möchten Sie diese vielleicht auf mehrere Seiten verteilen. Normalerweise würden Sie das erledigen, indem Sie die Frage beim **Fragebogen zusammenstellen** mehrfach einfügen und jeweils bei den Anzeige-Einstellungen ({{: | ||
Zeile 125: | Zeile 127: | ||
- | ===== Rotation | + | ===== Rotation |
- | In seltenen Fällen sollen | + | Im nachfolgenden wir erklärt, wie nicht nur die Items einer Frage rotiert werden, sondern |
+ | |||
+ | **Wichtig: | ||
+ | |||
+ | |||
+ | ==== Mehrere Fragen auf einer Seite ==== | ||
Das folgende Beispiel zeigt, wie man die Reihenfolge von 5 Fragen auf einer Seite im Fragebogen rotieren kann (zur Erklärung von Arrays s. [[filter-items# | Das folgende Beispiel zeigt, wie man die Reihenfolge von 5 Fragen auf einer Seite im Fragebogen rotieren kann (zur Erklärung von Arrays s. [[filter-items# | ||
<code php> | <code php> | ||
+ | // Teil 1: Liste der Fragen erstellen und mischen | ||
if (!isset($fragen)) { | if (!isset($fragen)) { | ||
$fragen = array( | $fragen = array( | ||
Zeile 145: | Zeile 153: | ||
registerVariable($fragen); | registerVariable($fragen); | ||
} | } | ||
+ | |||
+ | // Teil 2: Fragen anzeigen | ||
// Die Liste der Fragen Kennung für Kennung durchgehen | // Die Liste der Fragen Kennung für Kennung durchgehen | ||
// und jeweils die entsprechende Frage anzeigen | // und jeweils die entsprechende Frage anzeigen | ||
Zeile 155: | Zeile 165: | ||
- | ===== Fragen über mehrere Seiten rotieren | + | ==== Eine Frage pro Seite ==== |
+ | |||
+ | Falls Sie die Fragen einzeln auf jeweils einer eigenen Seite anzeigen möchten, kann dies mittels '' | ||
+ | |||
+ | <code php> | ||
+ | // Teil 1: Liste der Fragen erstellen und mischen | ||
+ | // (s. oben) | ||
+ | |||
+ | // Teil 2: Fragen anzeigen | ||
+ | $i = loopPage(count($fragen)); | ||
+ | question($fragen[$i]); | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Fragen über mehrere Seiten rotieren ==== | ||
Die Rotation von Fragen über mehrere Seiten ist nur geringfügig anspruchsvoller. Das folgende Beispiel zeigt, wie 6 Fragen auf 2 Seiten verteilt werden können: | Die Rotation von Fragen über mehrere Seiten ist nur geringfügig anspruchsvoller. Das folgende Beispiel zeigt, wie 6 Fragen auf 2 Seiten verteilt werden können: | ||
Zeile 162: | Zeile 186: | ||
// PHP-Code auf Seite 1 | // PHP-Code auf Seite 1 | ||
- | // Das Mischen | + | // Teil 1: Erstellen und mischen |
if (!isset($fragen)) { | if (!isset($fragen)) { | ||
// Liste der Frage-Kennungen erstellen | // Liste der Frage-Kennungen erstellen | ||
Zeile 176: | Zeile 200: | ||
} | } | ||
+ | // Teil 2a | ||
// Die ersten drei Kennungen der Liste anzeigen | // Die ersten drei Kennungen der Liste anzeigen | ||
question($fragen[0]); | question($fragen[0]); | ||
Zeile 184: | Zeile 209: | ||
<code php> | <code php> | ||
// PHP-Code auf Seite 2 | // PHP-Code auf Seite 2 | ||
+ | // Hier ist Teil 1 nicht (!) erneut erforderlich | ||
+ | // Teil 2b | ||
// Die nächsten drei Kennungen der Liste anzeigen | // Die nächsten drei Kennungen der Liste anzeigen | ||
question($fragen[3]); | question($fragen[3]); | ||
Zeile 191: | Zeile 218: | ||
</ | </ | ||
- | Falls Sie die Fragen einzeln auf jeweils einer eigenen Seite anzeigen möchten, kann dies mittels '' | ||
- | |||
- | <code php> | ||
- | $i = loopPage(count($fragen)); | ||
- | question($fragen[$i]); | ||
- | </ | ||
Zeile 341: | Zeile 362: | ||
setPageOrder($blocks); | setPageOrder($blocks); | ||
</ | </ | ||
+ | |||
+ | |||
+ | ===== Weitere Anwendungen ===== | ||
+ | |||
+ | Je nach Anwendungsfall können weitere Programmierungen erforderlich sein. Hier einige Beispiele: | ||
+ | |||
+ | * [[: |