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 [17.11.2018 22:23] – [Mehrere Fragen pro Stimulus] admin | de:create:rotation [15.01.2020 13:24] – admin | ||
---|---|---|---|
Zeile 21: | Zeile 21: | ||
- | ===== Rotation der Items oder Optionen | + | ===== Rotation der Items oder Optionen ===== |
- | Die Randomisierung oder Rotation von Items in einer Frage wird wie folgt aktiviert: | + | ==== Rotation in einer Frage ==== |
+ | |||
+ | Die Randomisierung oder Rotation von Items in einer Frage wird wie folgt aktiviert: | ||
+ | |||
+ | * Öffnen Sie die Frage im **Fragenkatalog** | ||
+ | * Im Abschnitt // | ||
+ | * Bei der Einstellung // | ||
+ | * Speichern | ||
Falls einzelne Items (z.B. ein " | Falls einzelne Items (z.B. ein " | ||
Zeile 32: | 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 58: | 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 78: | 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 120: | 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 140: | 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 150: | 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 157: | 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 171: | 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 179: | 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 186: | 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 261: | Zeile 287: | ||
Ebenso wie einzelne Seiten können auch Blöcke mehrere Seiten rotiert werden. Der einzige Unterschied ist, dass jedem dieser Blöcke unter **Fragebogen zusammenstellen** eine Kennung für die jeweils erste und letzte Seite zugeordnet werden (z.B. " | Ebenso wie einzelne Seiten können auch Blöcke mehrere Seiten rotiert werden. Der einzige Unterschied ist, dass jedem dieser Blöcke unter **Fragebogen zusammenstellen** eine Kennung für die jeweils erste und letzte Seite zugeordnet werden (z.B. " | ||
- | **Wichtig: | + | |
+ | ==== Zufällige Rotation ==== | ||
+ | |||
+ | **Wichtig: | ||
<code php> | <code php> | ||
Zeile 276: | Zeile 305: | ||
setPageOrder($blocks); | setPageOrder($blocks); | ||
</ | </ | ||
+ | |||
+ | |||
+ | ==== Systematische Rotation ==== | ||
+ | |||
+ | Mitunter ist es nicht nur erforderlich, | ||
+ | |||
+ | Bei 3 Blöcken (siehe obigens Beispiel) wären das 6 mögliche Varianten der Reihenfolge. Im Zufallsgenerator würde man also 6 Zettel/ | ||
+ | |||
+ | < | ||
+ | 1 = B1Start-B1End, | ||
+ | 2 = B1Start-B1End, | ||
+ | 3 = B2Start-B2End, | ||
+ | 4 = B2Start-B2End, | ||
+ | 5 = B3Start-B3End, | ||
+ | 6 = B3Start-B3End, | ||
+ | </ | ||
+ | |||
+ | Bei **Fragebogen zusammenstellen** auf der Fragebogen-Seite unmittelbar vor " | ||
+ | |||
+ | <code php> | ||
+ | $order = value(' | ||
+ | setPageOrder($order, | ||
+ | </ | ||
+ | |||
+ | " | ||