Das Abspeichern ist im Prinzip nicht weiter schwer - ich habe den Code ein wenig umgestellt und gehe davon aus, dass Sie eine interne Variable IV01 mit 2 Variablen (Items) haben.
$itemliste = getItems('US01', 'min', 3); // Relevante Items ermitteln
if (count($itemliste) == 0) {
goToPage('end'); // Nichts genutzt? Dann gleich weiter!
}
shuffle($itemliste); // Liste mischen
$items = array_slice($items, 0, 2);
// Eine -1 auf Platz 2 schreiben, falls nur ein Item relevant ist
while (count($items) < 2) {
$items[] = -1;
}
// Abspeichern
put('IV01_01', $items[0]);
put('IV01_02', $items[1]);
Soweit so gut ... jetzt haben Sie in IV01_01 und IV01_02 die Codes für Ihre beiden Items. Möchten Sie die Fragen auf allen folgenden Seiten immer untereinander zu den beiden Items stellen? Oder lieber erst ein Item abarbeiten und dann das zweite?
Wenn Sie es wie bisher haben möchten, würde die Verwendung wie folgt aussehen:
$items = valueList('IV01');
$fragen = array(
1 => 'PI01',
2 => 'PI02',
3 => 'PI03',
4 => 'PI04',
5 => 'PI05',
6 => 'PI06'
);
foreach ($items as $item) {
// eventuelle -1 überspringen
if ($item < 0) {
continue;
}
$frage = $fragen[$item];
question($frage);
}
Wenn Sie die Daten lieber so hätten (für die Auswertung könnte das SEHR vorteilhaft sein), dann Sie jedes Item in einer eigenen Datenzeile haben, dann sehen SIe sich doch bitte einmal die Anleitung Multi-Level Struktur an.