Hallo!
In meiner Umfrage sollen Teilnehmer*innen in eine von vier Experimentalgruppen zufällig zugeteilt werden. Diese Randomisierung habe ich mithilfe des Zufallsgenerators umgesetzt (Z001). (1= Kontrollgruppe, 2 = Treatmentgruppe 1, 3 = Treatmentgruppe 2, 4 = Treatmentgruppe 3).
Teilnehmerinnen der Gruppe 2 sollen den Text ("G001") und anschließend Fragen ("G002" & "G003") aus der Rubrik "GXXX" erhalten.
Teilnehmerinnen der Gruppe 3 sollen den Text ("H001") und anschließend Fragen ("H002" & "H003") aus der Rubrik "HXXX" angezeigt bekommen.
Teilnehmer*innen der Gruppe 4 angehören, sollen die Texte ("G001" & "H001") und die Fragen ("G002", "G003", "H002" & "H003" ) aus den Rubriken "GXXX" & "HXXX" erhalten.
Wenn eine der Fragen ("G002", "G003", "H002" & "H003" ) falsch beantwortet wird, sollen die Teilnehmer*innen die Möglichkeit haben, die falsch beantwortete(n) Frage(n) erneut zu beantworten ("G004", "G005", "H004", "H005" ). Wird die Frage ein zweites Mal falsch beantwortet, soll der/die Teilnehmer/in aus der Studie ausgeschlossen werden und den Text ("X003") angezeigt bekommen.
Bevor ich den Zufallsgenerator integriert habe, konnte ich diese Logik mithilfe des einfachen Fragefilters realisieren. Durch die Einteilung in die Gruppen funktioniert der Filter nicht mehr, weswegen ich mit php-Code versucht habe die Filterung vorzunehmen.
Hier ist mein aktueller php-Code:
Seite 1: Zufallsgenerator ("Z001") und php-Code
if (value('Z001') == 2) {
text('G001');
} elseif (value('Z001') == 3) {
text('H001');
} elseif (value('Z001') == 4) {
text('G001');
text('H001');
}
Seite 2: php-Code (für Gruppe 2 und 4)
if ((value('Z001') == 2) or (value('Z001') == 4)) {
question('G002');
question('G003');
}
Seite 3: php-Code (für Gruppe 2 - Gruppe 4 soll nachträglich hinzugefügt werden)
if ((value('Z001') == 2) and
(value('G002') == 3) and
(value('G003') == 3)) {
goToPage('Spaghetti');
} elseif ((value('Z001') == 2) and
(value('G002') != 3) and
(value('G003') != 3)){
question('G004');
question('G005');
} elseif ((value('Z001') == 2) and
(value('G002') != 3)){
question('G004');
} elseif ((value('Z001') == 2) and
(value('G003') != 3)){
question('G005');
}
Seite 4: php-Code (für Gruppe 2 - Gruppe 4 soll nachträglich hinzugefügt werden)
if ((value('Z001') == 2) and
(value('G004') == 3) and
(value('G005') == 3)) {
goToPage('Spaghetti');
} elseif ((value('Z001') == 2) and
(value('G004') != 3) and
(value('G005') != 3)){
text('X003');
} elseif ((value('Z001') == 2) and
(value('G004') != 3)){
text('X003');
} elseif ((value('Z001') == 2) and
(value('G005') != 3)){
text('X003');
}
Der gleiche Code soll für Gruppe 3 angewandt werden.
Die richtige Antwort ist immer Antwort 3!
Dieser php-code funktioniert, wenn beide Fragen falsch oder beide Fragen richtig beantwortet werden. Sobald jedoch eine Frage richtig und eine Frage falsch beantwortet wird, erhalte ich folgende Fehlermeldung: "Die Variable G005 wurde im Laufe dieses Interviews auf keiner vorhergehenden Seite abgefragt. Daher kann die Funktion value() keinen Antwort-Wert ermitteln.".
Diese Fehlermeldung erhalte ich, da die richtig beantwortete Frage nicht auf der nächsten Seite angezeigt wird, da nur die falsch beantwortete Frage wiederholt werden soll.
Ich hatte bereits versucht die Fragen für den 2. Versuch ("G004", "G005", "H004", "H005" ) als "optionale Fragen" einzustellen, jedoch erhalte ich trotzdem die selbe Fehlermeldung .
Vielen Dank im Voraus für die Hilfe!