Danke für die ergänzenden Informationen.
Ich würde folgendes Vorgehen empfehlen:
- Geben Sie der ersten und (vor-)letzten Seite jedes Fragebogens eine eindeutige Seitenkennung, also z.B. fb1start und fb1end
- Legen Sie einen zusätzlichen Fragebogen an und ziehen Sie alle anderen Fragebögen links aus der Navigation in die Zeile oben, wo (sonst) die Seiten des Fragebogens stehen. Im Hintergrund wird dadurch ein sehr langer Fragebogen mit allen Teilfragebögen erstellt - Sie können die 9 Fragebögen aber weiterhin getrennt verwalten.
Legen Sie zusätzlich eine (oder mehrere) Seite zu Beginn des neuen Fragebogens an. Auf der Seite direkt vor dem ersten Fragebogen definieren sie mittels PHP-Code die gewünschte Abfolge, z.B.
setPageOrder('fb1start-fb1end', 'fb5start-fb5end', 'fb3start-fb3end', 'end');
Statt "end" = die letzte Seite können sie natürlich nach dem dritten Fragebogen auch auf eine andere Seite springen, die Sie eventuell noch einfügen.
Wenn das soweit funktioniert, müssen Sie nur noch hinterlegen, wer welche Seitenabfolge bekommt. Eine Möglichkeit wäre, dass Sie das als Excel-Datei erstellen, als CSV speichern und dann in der "Datenbank für Inhalte" hinterlegen. Mit der Seriennummer als Schlüssel und der Abfolge als Inhalt. Das könnte dann so aussehen:
ABC1234 fb1start-fb1end,fb5start-fb5end,fb3start-fb3end
CDE2345 fb9start-fb9end,fb2start-fb2end,fb4start-fb4end
u.s.w.
Im neuen Fragebogen, dessen Zugriffsmodus Sie natürlich auf "Seriennummer" setzen, würden Sie das setPageOrder()
noch wie folgt ersetzen.
$key = caseSerial();
$data = dbGet($key);
if (!$data) {
// Fehlermeldung anzeigen
text('XY01');
buttonHide();
pageStop();
}
$order = $data[0];
setPageOrder($order, 'end');
Natürlich könnte man es noch eleganter machen und in der Datenbank für Inhalte nur die Nummern hinterlegen und aus diesen mittels PHP-Code dann die Seitenabfolge zusammenbauen. Oder man könnte die Blöcke/Fragebögen in einzelne Spalten der Datenbank legen ... aber das sind dann nur noch Details am Rande :)