+1 vote
in SoSci Survey (dt.) by s183387 (115 points)
closed by SoSci Survey

Hallo Community,

wir machen eine Tagebuchstudie, bei der Teilnehmende jeden Tag vier Mal einen Fragebogen ausfüllen müssen, in denen sie Personen nennen müssen, bei denen sie Nachrichten auf Instagram sehen. Pro Befragung kann jede:r Teilnehmender bis zu 3 Namen nennen.

In der Nachbefragung werden dann noch einmal weitere Fragen zu allen genannten Personen gestellt. Pro genannte Person sollen drei Fragen (MK01, MK02, MK03) gestellt werden.

In der Nachbefragung müssen also die Namen aus den täglichen Protokollen extrahiert werden und als Platzhalter eingesetzt werden (%instagramname%). Zudem sollen die drei Fragen (MK01, MK02, MK03) mithilfe eines Loops so oft wiederholt werden, je nach dem, wie viele Personen die:der jeweilige Teilnehmende genannt hat.

Wir denken, dass wir das mit der Datenbank für Inhalte lösen müssen. Da der automatische Export der Namen aus den täglichen Protokollen in die Datenbank für Inhalte nicht klappt, erstellen wir die Datenbank manuell aus dem exportieren Datensatz, welchen wir dann bei Datenbank für Inhalte hochladen. Darin ist pro Zeile die Seriennummer der teilnehmenden Person, die Anzahl der genannten Namen sowie die einzelnen Namen selber (pro Name eine Spalte) enthalten:

Schlüssel	Sprache	 0 	 1 	 2 	 3 	 4 	 5 	 6 	 7 	 8 	 9 	              Zeitstempel
9KPZWZMSZS	deu	     7	Anna Arne Balubalu Björn Dagibee Marie News WG   12.06.2021, 14:00

Nun wollen wir also in der Nachbefragung auf die genannten Namen je Teilnehmender (Seriennummer) aus der Datenbank für Inhalte zugreifen. Die drei Fragen sollen so oft wiederholt (also geloopt) werden, je nach dem, wie viele Namen die:der jeweilige:r Teilnehmende genannt hat (Also Spalte Anzahl der genannten Namen [D0] in der Datenbank).

Unser Code sieht bis jetzt so aus:

$key = caseSerial();
$data = dbGet($key);

loopPage('$data[D0]');

$i = 'D0'.loopIndex(); //Anzahl Wiederholungen je nach Anzahl Namen

replace('%instagramname%', '$data[$i]', 'response');

question('MK01');
question('MK02');
question('MK03');

Bis jetzt funktioniert weder der Loop noch das Einsetzen des Platzhalters mit dem richtigen Namen.

Wir hoffen sehr, dass uns hier jemand helfen kann - wir wissen nicht mehr weiter!

Vielen vielen Dank und liebe Grüße!

closed with the note: Es liegen keine weiteren Informationen zu dem Problem vor ... womöglich konnte es anhand des Kommentars bereits gelöst werden?
by SoSci Survey (326k points)
Sie übergeben an loopPage() einen String, korrekt wäre wahrscheinlich:

loopPage($data[0]);

Uahc im replace() sind die Anführungszeichen falsch:

$i = loopIndex();
replace('%instagramname%', $data[$i], 'response');

Für eine genauere Antwort wäre es hilfreich, wenn Sie eventuelle Fehlermeldungen und die Debug-Information posten, die für die Seite (z.B. beim ersten Aufruf) angezeigt wird.

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

...