Liebes SoSci Survey-Team,
ich habe folgendes Ziel:
Wir wollen eine MESM-Studie durchführen und haben 30 Befragungswellen.
Ich möchte alle Antworten auf eine offene Nennung "MP01" (muss nicht jedes mal ausgefüllt werden) als eine Auswahloption in einem späteren Drop-Down "MP09" verwenden.
D.h. Zu Zeitpunkt 1 geben sie Antwort1, zu Zeitpunkt 2 keine Antwort und zu Zeitpunkt 3 geben sie Antwort2. Zu Zeitpunkt 1 und 2 kann dann bei dem Drop-Down nur eine Antwort1 als Option ausgewählt werden, ab Zeitpunkt 3 dann aber auch Antwort2.
Hierzu habe ich mir die folgenden zwei Artikel von euch zu Gemüte geführt (https://www.soscisurvey.de/help/doku.php/de:create:transfer-responses und https://www.soscisurvey.de/help/doku.php/de:create:use-response) und versucht diese zu kombinieren. Außerdem habe ich bei dem Drop-Down Item 30 Platzhalter von %freund0% bis %freund29% eingefügt aber möchte natürlich, dass nur soviele ersetzt werden wie in den bisherigen Befragungswellen offene Antworten bei MP01 von dieser einen Person abgegeben wurden (also maximal bei der letzten Befragungswelle 30 Antworten). Dabei ist folgender Code herausgekommen:
$key = 'FR-'.caseSerial();
$data = array(
value('MP02_01')
);
dbSet($key, $data);
Und dann wenn ich es einfügen will:
$key = 'FR-'.caseSerial();
$data = dbGet($key);
$items = array();
for ($i=0; $i<=29; $i++) {
$antwort = $data[$i];
if (trim($antwort) != '') {
replace('%freund'.$i.'%', $antwort);
$items[] = $i;
}
}
// Folgefrage anzeigen
if (count($items) > 0) {
question('MP09', $items);
}
Als Fehlermeldung kommt aktuell folgendes: "Fehler im Fragebogen: Trying to access array offset on value of type bool Zeile: 7". Das mit $1 in dem $data[] scheint also nicht so einfach zu funktionieren wie ich mir das vorgestellt habe.
Ist es denn generell möglich mein Vorhaben umzusetzen und wenn ja, hätten Sie einen Tipp wie ich mein Problem lösen könnte?
Vielen Dank und herzliche Grüße