0 votes
in SoSci Survey (dt.) by s261213 (130 points)

Hallo!

Ich bräuchte Hilfe, da ich leider nicht weiterkomme...

Für mein Experiment sehen sich die Teilnehmerinnen insgesamt drei (randomly assigned) Videos von 11 an. (Alle 11 Videos sind bereits unter Bilder und Mediendateien hochgeladen.) Nach jedem Video müssen sie Fragen beantworten, also im Endeffekt: Stimulus 1 --> Fragen --> Stimulus 2 --> Fragen --->Stimulus 3 ---> Fragen --> Demographics etc.

Ich habe nun einen Rubrik erstellt und als Frage Zufallsgenerator (RG01) ausgewählt. Dort habe ich alle 11 Videos in den Zettel gespeichert, bei Ziehung "3" angegeben und bei Inhalte den HTML Code reinkopiert mit.... source src="%random% type "video/mp4"...., damit es immer random ist und bis dahin klappt auch alles gut.

Wenn ich jetzt den gleichen Zufallsgenerator (RG01) im Fragebogen auf der nächsten Seite einfüge/verwende, wird mir das gleiche Video (der gleiche Stimulus von der 1. Seite) angezeigt. Als Debug-Info kommt: "Der Zufallsgenerator RG01 wurde bereits zu einem früheren Zeitpunkt im Interview verwendet, die gezogenen Codes bleiben unverändert: 8, 3, 6".

Mein Problem ist ja nun, dass die Videos zwar "im Hintergrund" randomisiert werden, aber immer das gleiche Video angezeigt wird, weshalb ich versucht habe einen PHP-Code zu erstellen, damit auch bei der 2. und 3. Seite ein anderes Video gezeigt wird. Ich habe diesen Code erstellt, aber leider klappt das mit der Randomisierung immer noch nicht: Was mache ich falsch?

$zahl = value('RG01'); // Auslesen der gezogenen Zufallszahl
// Video in Abhängigkeit von der Zahl anzeigen
// (dafür wird HTML-Code verwendet)
if ($zahl == 1) {
text('video1.mp4');
} elseif ($zahl == 2) {
text('video2.mp4');
} elseif ($zahl == 3) {
text('video3.mp4');
} elseif ($zahl == 4) {
text('video4.mp4');
} elseif ($zahl == 5) {
text('video5.mp4');
} elseif ($zahl == 6) {
text('video6.mp4');
} elseif ($zahl == 7) {
text('video7.mp4');
} elseif ($zahl == 8) {
text('video8.mp4');
} elseif ($zahl == 9) {
text('video9.mp4');
} elseif ($zahl == 10) {
text('video10.mp4');
} elseif ($zahl == 11) {
text('video11.mp4');
}

Und was ich dann im Preview als Fehlermeldungen erhalte sind:
1. "Im Befragungsprojekt existiert kein Text mit der Kennung "(meine Videodatei).!" --> Ich habe aber all meine Videos als HTML Codes als Text in meiner Rubrik hinterlegt...
und 2. "Die Variable RG01 gibt es in diesem Projekt nicht (siehe Variablen-Übersicht). Daher kann kein Antwort-Wert dafür ermittelt werden." --> Wenn ich mir die Variablen anschaue in der Rubrik Zufallsgenerator habe ich RG01_CP; RG01x01; RG01x02 und RG01x03...

Vielen Dank im Voraus!

1 Answer

0 votes
by SoSci Survey (305k points)

Die Variable RG01 gibt es in diesem Projekt nicht

Korrekt - auch der Blick in die Variablen-Übersicht. Sie ziehen pro Interview ja drei Zettel, nicht nur einen. Deshalb haben Sie drei Variablen.

Die erste Ziehung finden Sie also unter RG01x01. Wenn Sie das erste Video anzeigen wollten, würden Sie also den HTML-Code für die Anzeige eines Videos als HTML-Code (Text) im Fragenkatalog ablegen und dann z.B. wie folgt programmieren (wenn wir mal annehmen, dass Ihr HTML-Code die Kennung TX01 hat).

replace('%random%', 'RG01x01', 'response');
text('TX01');

Für das zweite Video dann entsprechend

replace('%random%', 'RG01x02', 'response');
text('TX01');

Das klappt natürlich nur, wenn Sie am Ende die Antworten aus den Fragen (die vermutlich zu jedem Video anzeigen) den Videos zuordnen können. Da werden Sie den Datensatz nochmal vom Wide- ins Long-Format umstrukturieren müssen. Alternativ können Sie gleich in SoSci Survey mit einer Multi-Level-Struktur arbeiten.

by s261213 (130 points)
Schönen Nachmittag!
Vielen Dank für die Rückmeldung!!
Ich habe Ihre Anweisungen gefolgt, aber leider wird mir immer noch auf allen drei Seiten das gleiche Video gezeigt.

Ich habe die Videos als HTML-Code (Text) in diesem Format ( <source src="video1.mp4" type="video/mp4" />) für alle 11 Videos im Fragenkatalog abgelegt (Kennung RG03).

Wenn ich nun den obigen PHP Code verwende (für das 1. Video mit der Variable RG01x01 mit dem text 'RG03', für das 2. Video RG01x02 + text 'RG03', für das 3. Video RG01x01...) dann sehe ich zwar im Preview im Debug-Info auf allen drei Seiten, dass dreimal verschiedene Videos ausgewählt wurden ("Folgende Platzhalter sind vorbereitet: %random% = (Text)video10"), aber das Video, was dann abgespielt wird, ist immer das selbe auf allen drei Seiten. Wie kann ich es nun auch im Frontend schaffen, dass das randomly ausgewählte Video auch abgespielt wird für die Teilnehmer:innen?

Danke nochmals im Voraus!

Beste Grüße!
by s261213 (130 points)
Hallo! :)

Ich habe es nun doch geschafft, dass die verschiedenen Videos jeweils auf 3 Seiten abgespielt werden. Ich habe diesen Fehler gemacht, dass ich diesen Code (<video width="512" height="288" controls controlsList="nodownload" style="max-width: 100%">
  <source src="%random%"  type="video/mp4">
</video)
im Zufallsgenerator als HTML Text eingefügt hatte und nicht als einzelnen HTML Text. Nachdem ich das geändert hatte, hat es funktioniert! :)

Danke vielmals für die Hilfe und Zeit! :)

Liebe Grüße!

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

...