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

Ich möchte in einem Fragebogen gern aus 10 Rubriken (die aus je einem Text und einer Frage bestehen) 4 zufällig ausgewählte Rubriken auswählen lassen, welche dem Befragten dann angezeigt werden. Der Fragebogen soll jedes Mal mit einer Aufgabenstellung beginnen und der Soziodemografie und einem Abschlusstext enden.
Ich habe schon alles mit PHP ausprobiert und mich belesen, jedoch führte nichts zum Erfolg.

Ich bedanke mich jetzt schon für die Hilfe.

in SoSci Survey (dt.) by s132101 (130 points)

1 Answer

+1 vote
 
Best answer

Die Ziehung "4 aus 10" können Sie relativ komfortabel mit einem Zufallsgenerator realisieren.

Prinzipiell können Sie darin Rubriken hinterlegen - oder (was womöglich in Ihrem Fall intuitiver ist) die Seiten-Kennungen, die zu jeder Rubrik gehören. Diese müssten Sie dann nur noch an setPageOrder() übergeben.

Ich habe schon alles mit PHP ausprobiert und mich belesen, jedoch führte nichts zum Erfolg.

Posten Sie gerne Ihren PHP-Code, dann kann ich etwas konkreteres Feedback geben.

by SoSci Survey (199k points)
selected by s132101
Bis jetzt habe ich eine Frage Typ Zufallsgenerator (Z201) erstellt und darin festgelegt, dass 4 Zettel pro Interview gezogen werden. Die Art der Ziehung ist: gleichverteilte Ziehung (Ziehung ohne zurücklegen). Diese Frage (Z201) habe ich dann beim Fragebogen zusammenfügen auf die Frage vor dem gewünschten Zufallsfilter gesetzt. Zusätzlich habe ich einen PHP–Code eingefügt:
$pages = valueList('Z201', NULL, 'label');
setPageOrder($pages, 'Sozio');

Diesen PHP–Code habe ich aus einer anderen Frage im Supportbereich und habe ihn an meinen Fragebogen angeglichen. Problem ist jetzt, dass von der Seite, bei der der Filter dann wirken soll, direkt zur Soziodemografie gesprungen wird. Und ich erkenne nicht, wo der Fehler liegt.
> Problem ist jetzt, dass von der Seite, bei der der Filter dann wirken soll, direkt zur Soziodemografie gesprungen wird. Und ich erkenne nicht, wo der Fehler liegt.

Ergänzen Sie ein debug($pages), um mehr Informationen zu erhalten.

Und ... kennen Sie schon die Debug-Information? https://www.soscisurvey.de/help/doku.php/de:create:debugging - wenn ja, dann posten Sie doch auch bitte diese.
Das eine Problem ist gelöst: ich hatte die Frage Typ Zufallsgenerator unter den PHP–Code gesetzt. Dadurch hat er zuerst zur Soziodemografie geführt und der Zufallsfilter wurde gar nicht weiter ausgeführt. Jetzt hab ich die Frage vor den PHP–Code gesetzt und die Zufallsauswahl erfolgt erstmal.
Jedoch habe ich noch ein Problem. Jede Rubrik besteht wie oben beschrieben aus 2 Teilen, einem Text zur Erklärung und einer Frage. Diese sind auf 2Seiten aufgeteilt und sollen hintereinander angezeigt werden. Der Befragte soll also 4Rubriken à 2 Seiten angezeigt bekommen. Leider wird nur die erste Seite, also der Text, angezeigt. Ich habe gerade schon die Frage mit derselben Kennung des Textes versehen, was aber nicht zum Ziel führte. Kann ich das noch beheben?

Folgend kommen noch die derzeitigen Debug–Infos:
[Verarbeitung]    Erstelle Seite 4 in Fragebogen base
[Inhalt]    Erstelle Frage Z201
[Information]    Der Zufallsgenerator Z201 wurde bereits zu einem früheren Zeitpunkt im Interview verwendet, die gezogenen Codes bleiben unverändert: 8, 1, 7, 5
[Information]    Entsprechend setPageOrder() werden nun folgende Seiten gezeigt:
19 [B8], 5 [B1], 17 [B7], 13 [B5], 25 [Sozio]
debug()    Inhalt: Z201x01B8, Z201x02B1, Z201x03B7, Z201x04B5
[Inhalt]    Erstelle Frage A104

Debug-Information für debug($pages):
Z201x01B8, Z201x02B1, Z201x03B7, Z201x04B5
Bitte tragen Sie im Zufallsgenerator einfach immer beide Seiten ein. Es benötigen dann natürlich auch beide Seiten einer Rubrik eine Kennung.
Vielen Dank für die Hilfe. Es funktioniert jetzt alles genau so, wie es sein sollte. <3
...