0 votes
in SoSci Survey (dt.) by s119873 (110 points)
edited by SoSci Survey

Ich möchte auf einer folgenden Seite im Fragebogen Text abhängig von vorherigen Antworten anzeigen lassen. Fast immer sind das einfach die vorher ausgewählten Antwortalternativen. Dazu verwende ich beispielsweise als PHP-Code:

replace('%DiagnoseHi01%', 'HI06', 'response');

und habe den Platzhalter dann über html-Code im Fragebogen eingefügt. Das funktioniert auch.

Bei einzelnen Fragen möchte ich nun nicht den Inhalt des Items zurückmelden, sondern basierend auf der ausgewählten Antwortalternative den Platzhalter unterschiedlich festlegen. Wenn die erste Antwortalternative ausgewählt wurde, soll ein festgelegter Text angezeigt werden (in diesem Fall "gar nicht beeinträchtigt") und sonst sollen einfach die Antwortalternativen gespeichert werden (wie vorher, siehe obiger Text).

Das habe ich folgendermaßen versucht:

if (value('HI07') == 1) {
  replace('%DiagnoseHI02%', 'gar nicht beeinträchtigt');
} else {
  replace('%DiagnoseHi02%', 'HI07', 'response');
}

ich erhalte folgeden Fehler: Für den Platzhalter %DiagnoseHi02% wurde weder ein Eingabefeld mit prepare_input() vorbereitet, noch ein Inhalt mit replace() festgelegt.

Vermutlich stimmt also etwas mit meiner if-Schleife nicht. Kann mir damit jemand helfen?

Herzlichen Dank!

1 Answer

0 votes
by SoSci Survey (297k points)

Der PHP-Code sieht gut aus, es gibt nur einen klitzekleinen Fehler, welcher womöglich schon ursächlich für die Fehlermeldung verantwortlich ist: In der ersten Zeile haben Sie %DiagnoseHI02% mit einem großen "I" geschrieben, in der zweiten Zeile mit einem kleinen "i": %DiagnoseHi02%

Wenn nun Zeile 1 zum Einsatz kommt, ist nur der Platzhalter mit großem "I" definiert, aber keiner mit kleinem "i".

by s119873 (110 points)
Vielen Dank! Dafür bin ich wohl betriebsblind geworden. Jetzt funktioniert es! 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

...