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

0 votes

Hallo,
sehr gerne würde ich den vordefinierten Platzhalter %pageNumber.rel% auslesen, um mit der Seitenzahl weitere Berechnungen zu machen.

Ich habe dies hier versucht, aber leider kommt eine Fehlermeldung:

$nummer = value('%pageNumber.rel%');  // Versuch die aktuelle Seitenzahl auszulesen
$nummer = (int)$nummer;   // Sicherstellen, dass es eine Zahl ist
$ergebnis =  $nummer -3;  // Zahl minus 3
html('<p> '.$ergebnis.' Beschreibung</p>'); // Als Text im Fragebogen anzeigen

Mein Ziel ist es trotz randomisierter Reihenfolge von drei Seiten, den Befragten anzuzeigen, dass es drei verschiedene Seiten gibt (in meinem Fall Beschreibungen von Situationen).

Über jede Hilfe bin ich dankbar!

in SoSci Survey (dt.) by s104433 (130 points)
edited by SoSci Survey

1 Answer

+1 vote
 
Best answer

Der Platzhalter kann im PHP-Code bisher nicht ausgelesen werden.

Aber wenn Sie bei der Randomisierung der Seiten mit setPageOrder() arbeiten, können Sie die Position einfach mittels loopIndex() abfragen.

$nummer = loopIndex() + 1;
by SoSci Survey (250k points)
selected by s104433
Perfekt. Vielen Dank für diese elegante Lösung!

Für andere hier die vollständige Lösung:
1. Frage als Zufallsgenerator erstellen (hier RD01), Seiten deren Reihenfolge  randomisiert werden sollen als Zettel eintragen.

2. PHP-Code vor ersten zu randomisierenden Seite:
question('RD01');  // Zettel in zufälliger Reihenfolge ziehen
$pages = valueList('RD01', NULL, 'label');  // Gezogene Zettel auslesen
setPageOrder($pages, 'diff');  // Seiten als Seitenabfolge definieren, diff = Seite bei der es weiter gehen soll

3. PHP-Code auf der jeweiligen Seite, die randomisiert wird:

$nummer = loopIndex() + 1;
html('<h1>Beschreibung '.$nummer.' </h1>');
...