0 votes
in SoSci Survey (dt.) by s102157 (140 points)

Hallo,
bei einer Auswahlfrage muß der Proband genau 2 Optionen von mehreren auswählen. Auf der Seite danach soll die erste Antwort und weiter hinten die zweite Antwort ausgelesen und in eine Überschrift gesetzt werden. Mit
replace('%Faehigkeit1%', 'FK01', 'response');
werden aber beide Antworten eingesetzt. Was müßte ich ergänzen, damit nur die 1. bzw die 2. Antwort genommen wird?

Herzlichen Dank schonmal
Robert Lust

1 Answer

0 votes
by SoSci Survey (302k points)

Sie arbeiten mit einer Mehrfachauswahl? Die beiden ausgewählten Optionen bekommen Sie dann wie folgt:

$selected = getItems('FK01', 'is', 2);
replace('%Faehigkeit1%', getItemtext('FK01', $selected[0]));
replace('%Faehigkeit2%', getItemtext('FK01', $selected[1]));
by s102157 (140 points)
Vielen Dank, das hat auch mit den vordefinierten Antwortoptionen super geklappt. Es gibt aber auch 2 zusätzliche undefinierte Antwortoptionen wo der Proband seine Fähigkeit in ein Feld eintippen kann. Die Info wird leider nicht übertragen. Wissen Sie was ich meine?
Beste Grüße Robert Lust
by SoSci Survey (302k points)
Für diesen Fall müssen Sie noch value() verwenden. Hier mal mit FOR-Schleife, damit es übersichtlich bleibt. Und mal angenommen, dass die Items 9 und 10 die offenen Eingabefelder haben - sonst müssen Sie anpassen.

$selected = getItems('FK01', 'is', 2);
foreach ($selected as $i => $itemID) {
  if (in_array($itemID, array(9, 10)) {
    $text = value(id('FK01', $itemID).'a');
  } else {
    $text = getItemtext('FK01', $selected[0]);
  }
  replace('%Faehigkeit'.($i+1).'%', $text);
}
by s102157 (140 points)
Wau, ich bin begeistert :-)
1000 Dank und einen schönen Abend
by s102157 (140 points)
Hallo,
ich habe gerade festgestellt, dass jetzt zwar undefinierten Antwortoptionen mit Eingabefeld funktionieren, aber bei den vordefinierten 2x die gleiche Fähigkeit eingesetzt wird, statt Fähigkeit 1 und dann Fähigkeit 2. Könnten Sie mir bitte noch einmal helfen?
by SoSci Survey (302k points)
by s102157 (140 points)
edited by s102157
Hier sieht man, dass 2x Offenheit genommen wurde. (Kennung 07 ist "Innere Ruhe"


[Information]    Interview Nummer 242 wird fortgesetzt
[Information]    Der Fragebogen base im Projekt innere-staerke wird verwendet
[Information]    Die Verweildauer auf Seite 8 betrug zusätzliche 111 Sekunden
[Verarbeitung]    Lese Antworten von Seite 8
[Information]    Antwort auf FK01_01 = 1
[Information]    Antwort auf FK01_02 = 1
[Information]    Antwort auf FK01_03 = 1
[Information]    Antwort auf FK01_04 = 1
[Information]    Antwort auf FK01_05 = 1
[Information]    Antwort auf FK01_06 = 2
[Information]    Antwort auf FK01_07 = 2
[Information]    Antwort auf FK01_08 = 1
[Information]    Antwort auf FK01_09 = 1
[Information]    Antwort auf FK01_10 = 1
[Information]    Antwort auf FK01_11 = 1
[Information]    Antwort auf FK01_12 = 1
[Information]    Keine Antwort für FK01_12a
[Information]    Antwort auf FK01_13 = 1
[Information]    Keine Antwort für FK01_13a
[Information]    Antwort auf FK01 = 2
[Information]    Fragen bisher zu 88% vollständig beantwortet
[Verarbeitung]    Erstelle Seite 9 in Fragebogen base
[Inhalt]    Zeige Text F1
[Inhalt]    Erstelle Frage F101
[Inhalt]    Erstelle Frage F103
[Information]    Folgende Platzhalter sind vorbereitet:
%Faehigkeit1% = (Text) Offenheit
%Faehigkeit2% = (Text) Offenheit

Das war das Skript
$selected = getItems('FK01', 'is', 2);
foreach ($selected as $i => $itemID) {
  if (in_array($itemID, array(12, 13))) {
    $text = value(id('FK01', $itemID).'a');
  } else {
    $text = getItemtext('FK01', $selected[0]);
  }
  replace('%Faehigkeit'.($i+1).'%', $text);
}
by SoSci Survey (302k points)
In dieser Zeile ist noch ein kleiner Fehler:

$text = getItemtext('FK01', $selected[0]);

Es müsste heißen:

$text = getItemtext('FK01', $itemID);

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

...