Inhaltsverzeichnis

loopPage()

int loopPage(int Startwert, int Endwert, [int Inkrement])

int loopPage(int Wiederholungen)

mixed loopPage(array Elemente)

Wiederholt die Seite – beginnend mit dem Startwert – in einer Schleife so oft, bis der Endwert erreicht ist. Der jeweils aktuelle Wert wird zurückgegeben.

Falls nur ein numerischer Parameter (Wiederholungen) angegeben ist, wird die Seite so oft wie angegeben wiederholt. Die Zählvariable beginnt in diesem Fall mit 0.

Falls nur ein Array als Parameter (Elemente) angegeben ist, wird die Seite für jedes Element des Arrays einmal angezeigt und die Funktion loopPage() gibt jeweils das Element des Arrays zurück.

Hinweis: Um mehrere Seiten zu wiederholen, verwenden Sie loopToPage().

Hinweis: Beispiel-Code zur Verwendung finden Sie in der Anleitung zu loopToPage().

Beispiel: Alle Fragen einer Rubrik in zufälliger Abfolge

if (!isset($fragen)) {
  // Liste aller Fragen aus Rubrik RS
  $fragen = getQuestions('RS');
  // Die Liste der Fragen (Array) mischen und zwischenspeichern
  shuffle($fragen);
  registerVariable($fragen);
}
// Alle Kennungen aus der Liste $fragen abarbeiten
$frage = loopPage($fragen);
question($frage);

Beispiel: Fragen in zufälliger Abfolge präsentieren II

// PHP-Code auf einer der ersten Seiten im Fragebogen
// Liste mit Fragen erstellen, mischen und zwischenspeichern
$fragen = array(
  'AB01', 'AB02', 'AB03',
  'AB04', 'AB05', 'AB06'
);
shuffle($fragen);
registerVariable($fragen);
// PHP-Code später im Fragebogen
$i = loopPage(6);  // 6 Wiederholungen - äquivalent zu loopPage(0,5)
question($fragen[$i]);

In diesem Beispiel wird die Liste der Fragen bereits weiter vorne im Fragebogen definiert und gemischt. Dadurch entfällt die IF-Konstruktion mit isset(), welche im obigen Beispiel ein erneutes Mischen der Liste verhindert.

Beispiel: Fragen in zufälliger Abfolge mit Verweildauer

Hinweis: Weil dieselbe Seite immer wieder angezeigt wird, werden die Antwortzeiten für alle Wiederholungen addiert. Falls Sie die Bearbeitungszeiten getrennt erheben möchten, müssen Sie anstatt loopPage() mehrere Seiten verwenden.

// PHP-Code auf einer der ersten Seiten im Fragebogen
// Liste mit Fragen erstellen, mischen und zwischenspeichern
$fragen = array(
  'AB01', 'AB02', 'AB03',
  'AB04', 'AB05', 'AB06'
);
shuffle($fragen);
registerVariable($fragen);
// PHP-Code später im Fragebogen - Seite 21
question($fragen[0]);
 
// PHP-Code auf Seite 22
question($fragen[1]);
 
// u.s.w.
 
// PHP-Code auf Seite 26
question($fragen[5]);