Ich habe dies zum php-code hinzugefügt, der dann so aussah:
if (!isset($itemBlocks)) {
$questions = ['B002', 'H109'];
// Liste mit allen Items erstellen
$items = [];
foreach ($questions as $qstID) {
$qstItems = getItems($qstID, 'all');
foreach ($qstItems as $itemID) {
$items[] = [$qstID, $itemID];
}
}
// Liste mischen
shuffle($items);
// Liste aufteilen
$itemBlocks = array_chunk($items,15);
registerVariable($itemBlocks);
}
// Auf mehreren Seiten präsentieren
$i = loopPage(count($itemBlocks));
// Fragetext anzeigen
question('B002', 'spacing=0', 'show-items=no');
// Items anzeigen
$items = $itemBlocks[$i];
foreach ($items as $item) {
question($item[0], [$item[1]], 'spacing=0', 'show-title=no', 'show-explanation=no', 'anchor=none');
}
// vor dem ersten Item den Vorspann anzeigen
$first = true;
foreach ($items as $item) {
if ($first) {
question($item[0], [$item[1]], 'spacing=0');
first = false;
} else {
question($item[0], [$item[1]], 'spacing=0', 'show-title=no', 'show-explanation=', 'anchor=none');
}
}
Leider bekomme ich dazu folgende Fehlermedlung:
Fehler im Fragebogen (Seite 2)
Im PHP-Code trat ein Fehler auf.
Fehler im Fragebogen: Befehl oder String (Text) nicht abgeschlossen
Hinter einem Befehl wie z.B. question() steht kein Strichpunkt oder
ein String (Text in Anführungszeichen) ist nicht abgeschlossen oder
im String selbst kommt ein Anführungszeichen vor, z.B. html('Mach's besser!'); – in diesem Fall stellen Sie dem Anführungszeichen einen Backslash (\) voran.
Möglicherweise stimmen die öffnenenden und schließenden geschweiften Klammern für Anweisungsblöcke auch nicht überein.
PHP-Code
034 $first = true;
035 foreach ($items as $item) {
036 if ($first) {
037 question($item[0], [$item[1]], 'spacing=0');
038 first = false;
039 } else {
040 question($item[0], [$item[1]], 'spacing=0', 'show-title=no', 'show-explanation=no', 'anchor=none');
041 }