0 votes
in SoSci Survey (dt.) by s066156 (125 points)

Ich versuche, in meinem Fragebogen umzusetzen, dass die Probanden der Kontrolllgruppe (EX01 = 1) ein bestimmtes Bild angezeigt bekommen, und die Probanden der Experimentalgruppe, je nach ihrer Auswahl in zwei weiteren (Bild-)Fragen (AS01 und AS02), jeweils auch eines, passend zu ihren Antworten.
Zum Kontext: In der Kontrollgruppe "arbeiten" die Probanden mit einem fertig konfigurierten Roboter, den sie dann sehen sollen, in der Experimentalgruppe kann man den Roboter selbst zusammenstellen, indem man Bewegungsapparat (eine Frage) und Kopf (weitere Frage) aus jeweils zwei Möglichkeiten auswählt. Es ergeben sich damit vier mögliche Roboter-Bilder, die man angezeigt bekommen soll, je nach Auswahl.

Ich habe versucht, das Ganze mit php-Code umzusetzen. Für die Bilder habe ich mich der Krücke bedient, sie in Textelemente einzubinden, um die Beschriftung einfacher zu halten.

if (value('EX01') == 1){
  text('SZ07'); //wenn fertiger Roboter dann Bild tech1
} else if (value('AS01') == 1) and (value('AS02') == 1) {
  text('SZ06'); //wenn Beine ant und Kopf ant dann Bild ant2
} else if (value('AS01') == 1) and (value('AS02') == 2) {
  text('SZ05'); //wenn Beine ant und Kopf tech dann Bild ant1
} else if (value('AS01') == 2) and (value('AS02') == 1) {
  text('SZ07'); //wenn Beine tech und Kopf ant dann tech1
} else if (value('AS01') == 2) and (value('AS02') == 2) {
  text('SZ08'); //wenn Beine tech und Kopf tech dann tech2
}

Ich bekomme aber eine Fehlermeldung "Fehler im Fragebogen: Befehl oder String (Text) nicht abgeschlossen" angezeigt. Die kann ich nicht nachvollziehen, da meiner Ansicht nach alles vollständig ist. Womöglich habe ich einen ganz anderen Fehler gemacht?
Die Umsetzung ist sehr wichtig, da ich den gleichen Code an mehrern Stellen im Fragebogen verwenden möchte, um jeweils gruppenspezifische Bilder anzuzeigen.

1 Answer

0 votes
by SoSci Survey (298k points)
selected by s066156
 
Best answer

Sieht schon gut aus - es fehlen nur ein paar Klammern.

Und zwar steht das "and" bei Ihnen außerhalb der Klammer:

if (value('AS01') == 1) and (value('AS02') == 1)

Die IF-Bedingung muss aber immer in Klammern stehen, deshalb muss es so formuliert werden:

if ((value('AS01') == 1) and (value('AS02') == 1))

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

...