0 votes
in SoSci Survey (dt.) by s213411 (120 points)

Wir möchten in unserem Fragebogen 36 Blöcke rotieren. Die Blöcke bestehen aus jeweils drei Seiten. Für jede Seite der rotierten Blöcke brauchen wir einen Timer. Die Rotation soll nach dem Prinzip "ohne zurücklegen" funktionieren. Sobald alle Blöcke abgespielt wurden soll eine Abschlussseite gezeigt werden. Die Rotation der Blöcke funktioniert an sich. Auch die Timer funktionieren ohne Rotation. Allerdings funktionieren die Codes gemeinsam nicht. Wir vermuten, dass der Code gotopage('next') nicht stimmt. Wir verwenden folgende Codes:

$rotation = array(
'A' => array('A1','A2', 'A3'),
'B' => array('B1', 'B2', 'B3'),
'C' => array('C1', 'C2', 'C3'),
);
shuffle($rotation);
setPageOrder($rotation,'D1');

--> für die Rotation

UND

if (!isset($time0)) {
$time0 = time();
registerVariable($time0); // Die Variable $time0 auch nach Ende des PHP-Codes aufbewahren
}
// Prüfung, ob die Zeit schon abgelaufen ist
// (z.B. weil der Teilnehmer die Seite neu geladen hat)
$timer = 2; // Der Teilnehmer hat 2 Sekunden Zeit zur Bearbeitung
if (time() >= $time0 + $timer) {
goToPage('next');
}
// Die verbleibende Zeit muss auch dem JavaScript-Code bekannt gemacht werden
$remain = $time0 + $timer - time();
replace('%remain%', $remain);

--> um den Timer auszulösen

//Prüfung, ob die Zeit schon abgelaufen ist
$timer = 5; //Der Teilnehmer hat 1 Minute (60 Sekunden)
if(time() >= $time0 + §timer) {

goToPage('next');

}
//De verrbleibende Zeit muss auch dem JavaScript-Code bekannt gemacht werden
$remain = §time0 + §timer + time();
replace('%remain%', §remain);

--> für die darauf aufbauenden folgenden Seiten

Hat jemand eine Idee wie wir sie koordinieren könnten?

1 Answer

0 votes
by SoSci Survey (305k points)

Haben Sie die Variable für den Timer auf jede Seite $time0 benannt oder haben Sie das variiert?

Mein Tipp wäre - da man die Seite in 2 Sekunden kaum sinnvoll neuladen kann - dass Sie das ganze PHP-Zeug weglassen und auf folgende Zeilen reduzieren:

replace('%remain%', 2);
text('...');

Wobei statt den drei Punkten natürlich die Kennung Ihres JavaScript-Textbausteins stehen muss.

by s213411 (120 points)
Wir habens damit, Danke!

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...