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

0 votes

Ich möchte gerne im Fragebogen eine Frage stellen, zu der die Teilnehmer z.B. zwischen 3 Antwortoptionen wählen müssen. (A, B, C,) Zu den drei Antwortmöglichkeiten können Sie anschließend in einem Freitextfeld Ihre Begründung abgeben.
Für den Teilnehmer, der danach an dem Fragebogen teilnimmt, sollte schon die Verteilung der bisherigen Antworten zwischen A, B und C angezeigt werden, inklusive der Argumente die vorige Teilnehmer bereits gesammelt haben. Anschließend soll er/sie sich ebenfalls entscheiden und ein neues Argument hinzufügen können. Quasi eine Art Forum nachzubilden.

Mit der Funktion answers() bin ich nicht wirklich weiter gekommen, da ich nur die vom Teilnehmer selbst abgegebene Antwort anzeigen lassen konnte.

Ich bin dankbar für jeden Hinweis (:

in SoSci Survey (dt.) by s091537 (170 points)

1 Answer

+1 vote
 
Best answer

Was Sie hier benötigen ist die Funktion statistic().

Damit können Sie die Häufigkeit für jede Antwortoption abrufen. Ich müsste nochmal nachsehen, ob es inzwischen auch eine undokumentierte Funktion gibt, um damit auch offene Antworten abrufen zu lassen - glaube das aber nicht.

Hierfür müssten sie wohl auf die Datenbank für Inhalte zurückgreifen. Speichern Sie die offenen Antworten in jedem Interview mittels dbSet() unter einem Schlüssel, welche z.B. als ersten Buchstaben die Antwortoption verwendet (A/B/C) und danach z.B. caseToken().

Über dbData('A') bekommen Sie dann Antworten, die mit dem Präfix "A" gespeichert wurden. Klingt kompliziert? Keine Sorgt, ist halb so schlimm. Aber wer ungewöhnliche Designs benötigt, muss eben ein wenig mehr arbeiten... Wenn es hakt, sagen sie gerne wieder Bescheid.

by SoSci Survey (82.1k points)
selected by s091537
Super, vielen Dank bereits für die Antwort! Ich habe den ersten Teil auch schon umgesetzt bekommen. Leider hängt es bei mir beim Speichern des Wertes der offenen Texteingabe in die Datenbank. Habe bereits verschiedenste Code Stücke ausprobiert, allerdings bleibt die Spalte für die Werte der Texteingabe  immer leer.
Z.B. den hier:
$key = 'P-'.caseToken();
$kommentarP = $key.value('IE08_01');
dbSet($key, $kommentarP);
Allerdings wird hier immer nur der key erneut in die Spalte für den Textfeldwert geschrieben. Auch ohne $key. für die variable kommentar klappt es nicht. Dann wird gar kein Wert eingetragen.
Müsste ich vorab eine Spalte für die DB anlegen mit der ID des Textfeldes?

Danke für die erneute Hilfe!
Fehler gefunden... Mein Datenbankbefehl war auf der selben Seite wie die Frage die die eigentlichen Daten generiert...einfach die DB Befehle auf eine neue Seite danach eingefpgt und schon lassen sich die Texteingaben in der DB speichern Kommt Zeit kommt Rat :D
...