Seiten werden bei mir beim Rotatieren leider mehrfach angezeigt.
Bisher hatte ich diesen Code erfolgreich zum Rotieren von Seiten verwendet:
if (!isset($seiten)) {
$seiten = array('A','B','C','D');
shuffle($seiten);
$seiten[] = 'PF';
registerVariable('seiten');
}
setPageOrder($seiten);
Da ich nun auch die Seitenreihenfolge speichern möchte, habe ich mich für diesen Code entschieden:
$pages = array('A','B','C','B');
$indices = array_keys($pages);
shuffle($indices);
$random = array();
for ($i=0; $i<count($indices); $i++) {
$id = id('IV02', $indices[$i] + 1);
put($id, $i + 1);
$random[$i] = $pages[$indices[$i]];
}
setPageOrder($random);
Im Debug-Modus funktioniert es auch. Aber bei Vorschau und im richtigen Fragebogen werden Seiten doppelt gezeigt. Ich vermute, dass ich an einer Stelle auch wieder notieren muss, wo es nach der Randomisierung weitergehen soll. Jedoch hat eine Kombination der beiden Codes bisher nicht funktioniert. Hat jemand einen Tipp?
Vielen Dank