0 votes
in SoSci Survey (dt.) by s335392 (110 points)

Hallo,

ich bin leider etwas überfordert mit allen Funktionen zur Randomisierung und bin mir unsicher welche ich nun verwenden soll. Ich schildere kurz mein Vorhaben:

Mein Studiendesign soll zwei Versuchsgruppen: unterscheiden:

Gruppe 1: sieht die Tanzvideos mit Ton

Gruppe 2: sieht die Tanzvideos ohne Ton

Stimulusmaterial:

18 Videos insgesamt:

9 mit positiver Körpersprache

9 mit negativer Körpersprache

Jede Versuchsperson sieht genau 4 Videos:

2 positive

2 negative

→ zufällig gezogen aus dem Gesamtpool

Wie gehe ich hierfür am Besten vor?

Ich würde mich über eine Antwort sehr freuen!

Vielen Dank und viele Grüße

1 Answer

0 votes
by s000002 (352k points)

Damit ich es korrekt verstehe: Sie haben 2 (mit/ohne Ton) x 2 (pos./neg.) x 9 Videos - also 2 x dieselben 18, einmal mit und einmal ohne Ton. Soweit korrekt?

Von der technischen Umsetzung benötigen Sie m.E. 5 Zufallsgeneratoren:

1) Einen mit zwei Codes für die mit/ohne Ton Randomisierung
2) Zwei mit den 9 positiven und negativen Videos mit Ton
3) Und nochmal zwei mit jeweils 9 pos./neg. Videos ohne Ton

In den 4 Zufallsgeneratoren aus 2) und 3) stellen Sie ein, dass pro Interview jeweils 2 Zettel gezogen werden sollen.

Im Fragebogen würden Sie dann zunächst aus dem ersten Zufallsgenerator ziehen, und in Abhängigkeit von dieser ziehen dann entweder aus den beiden von 2) oder von 3). Das funktioniert bereits per PHP-Code.

Dann noch ein wenig PHP-code für die Präsentation der Videos - aber wie der konkret aussieht, hängt dann von Ihrer Seitenstruktur ab. Das sehen wir uns an, wenn Sie die Ziehung soweit umsetzen konnten. Fragen Sie bei Unklarheiten gerne nach :)

by s335392 (110 points)
Ich glaube ich habe mich vielleicht falsch ausgedrückt. Ich versuche nochmal etwas strukturierter und klarer zu formulieren:

Ich habe insgesamt 18 Videos mit Ton in meinem Projekt hochgeladen.
Von diesen 18 Videos gibt es 9 positive und 9 negative Videos.
Alle hochgeladenen Videos sind mit Tonspur und ich habe keinen weiteren Speicherplatz, um die Videos ohne Ton hochzuladen.

Nun möchte ich so vorgeheben, dass Gruppe 1 die Videos ganz normal mit Ton sieht und Gruppe 2 ohne Ton. Dabei jeweils zwei positive und negative. Daraus ergibt sich folgende Zusammensetzung:

Gruppe 1:
1) positives Video mit Ton
2) positives Video mit Ton
3) negatives Video mit Ton
4) negatives Video mit Ton

Gruppe 2:
1) positives Video ohne Ton
2) positives Video ohne Ton
3) negatives Video ohne Ton
4) negatives Video ohne Ton.

Ich bin nun folgendermaßen vorgegangen:
1) Erstellung Zufallsgenerator mit 2 Codes (Gruppe 1: mit Ton, Gruppe 2: ohne Ton) mit Ziehung von 1 Zettel
2) Erstellung Zufallsgenerator positive Videos mit 9 Codes (Dateinamen der positiven Videos) mit Ziehung von 2 Zetteln
3) Erstellung Zufallsgenerator negative Videos mit 9 Codes (Dateinamen der negativen Videos) mit Ziehung von 2 Zetteln
 
Jetzt erfolgt zwar eine Randomisierung der Videos, allerdings sind einige Funktionen noch nicht vollständig:
Die Funktion, dass Videos stumm abgespielt werden, fehlt. Mir ist noch unklar, wie ich diese Funktion programmieren kann.
Die Randomisierung der positiven und negativen Videos erfolgt, allerdings erhalte ich zwei mal das gleiche Video, da ich den selben Zufallsgenerator auf beiden Fragebogenseiten verwendet habe. Ich weiß noch nicht, wie ich eine Ziehung für das zweite Video ermöglichen kann, ohne dass das selbe Video nochmal gezogen wird). Wahrscheinlich mittels PHP - habe ich aber noch nicht ganz verstanden.

Zur Seitenstruktur:
Seite 1: Zufallsgenerator: mit/ohne Ton - daraus soll schließen wie die folgenden Videos angezeigt werden
Seite 2: Zufallsgenerator Video positiv und Anzeigen des Videos
Seite 3: Befragung
Seite 4: Zufallsgenerator Video positiv und Anzeigen des Videos
Seite 5: Befragung
Seite 6: Zufallsgenerator Video negativ und Anzeigen des Videos
Seite 7: Befragung
Seite 8: Zufallsgenerator Video negativ und Anzeigen des Videos
Seite 9: Befragung

Ich hoffe ich habe mich verständlich ausgedrückt und danke Ihnen vielmals für Hilfe!!
by s000002 (352k points)
> Die Funktion, dass Videos stumm abgespielt werden, fehlt.

Es gibt im prinzip das "muted" Attribut (https://www.w3schools.com/tags/att_video_muted.asp) bei der Video-Einbindung. Aber ich würde vermuten, dass die Befragten die Stummschaltung aufheben können, wenn nicht auch die Kontrollelemente deaktiviert werden.

Falls das nicht funktioniert, müssten Sie sich bitte Gedanken machen, die Videos außerhalb von Sosci Survey auf einem Webserver (z.B. Cloud-Server der Uni) zu speichern, und sie von dort einzubinden.

> allerdings erhalte ich zwei mal das gleiche Video

Bei der Ziehung von mehr als einem Code pro Zufallsgenerator und Interview können Sie nicht (!) mit dem HTML-Code im Zufallsgenerator arbeiten. Da müssten Sie bitte mit ein wenig PHP-Code arbeiten. Die Anleitung liefert dazu mehrere Beispiele. In Ihrem Fall würde ich empfehlen, den Dateinamen als Platzhalter in den HTML-Code einzubinden.

Und welchen HTML-Code Sie verwenden (mit oder ohne "muted"), das entscheidet der erste Zufallsgenerator.

Starten Sie mal damit, dass Sie im Fragenkatalog einen Text (Darstellung "HTML-Code") anlegen, der ein Video abspielt. Dann ersetzen Sie den Dateinamen durch einen Platzhalter und versuchen, diesen aus dem Zufallsgenerator zu speisen. Und dann schauen wir weiter.
by s335392 (110 points)
Also ich hab für jedes einzelne Video einen Text mit HTML Code angelegt, so sieht mein Code aus:

<video playsinline muted controls style="width: 360px; height: 640px; object-fit: cover; display: block; margin: 0 auto; background-color: black;">
  <source src="pro://2.2.mp4" type="video/mp4" />
</video>

Dann habe ich den Dateinamen versucht durch einen Platzhalter zu ersetzen:

<video playsinline muted controls style="width: 360px; height: 640px; object-fit: cover; display: block; margin: 0 auto; background-color: black;">
  <source src="%if(ZG_Ton = 2)% muted %endif%>
" type="video/mp4" />
</video>

Nun spielt das Video nicht ab.
Mein erster Zufallsgenerator heißt: ZG_Ton und die Zettel sind 1=mit Ton 2=ohne Ton.

Geht das irgendwie in die richtige Richtung?
by s000002 (352k points)
> %if(ZG_Ton = 2)% muted %endif%>

Da haben Sie aber nicht die Anleitung zu Platzhaltern in SoSci Survey gelesen, sondern die KI befragt, oder? Die hat die Anleitung offenbar auch nicht gelesen:
https://www.soscisurvey.de/help/doku.php/de:create:placeholders

Eigentlich hätten Sie "pro://2.2.mp4" nur durch "%video%" ersetzen müssen.

Probieren sie als nächstes im Fragebogen bitte:

replace('%video%', 'pro://2.2.mp4');
text('AB01');

Statt AB01 setzen Sie die Kennung des Textes ein, in dem Sie den (korrekten) Platzhalter verwendet haben. Sie brauchen nur einen Text für die "muted" Version und einen ohne "muted".
by s335392 (110 points)
Ich habe mir die Anleitung durchgelesen, aber da ich kaum etwas verstehe habe ich die KI gefragt. Ich verstehe selbst jetzt nicht wieso %video% eingefügt wird und hätte es leider auch aus der Anleitung nicht rauslesen können.

Ich habe nun den korrekten Platzhalter ersetzt. Dann habe ich im Fragebogen einen PHP-Code angelegt und "replace('%video%', 'pro://2.2.mp4');
text('VN01');" eingefügt. Wenn ich jetzt den Fragebogen durchgehe, kommt das Video gemuted.

Verstehe ich es richtig, dass ich auf die gleiche Seite zwei mal einen PHP Code einsetzen muss - einmal für muted und einmal ohne muted?
Mir ist gerade noch unklar weshalb das Video auf einmal muted ist. Mit dem Platzhalter sagt man ja nur, dass das Video hier abgespielt werden soll oder nicht?
by s000002 (352k points)
> Ich verstehe selbst jetzt nicht wieso %video% eingefügt wird und hätte es leider auch aus der Anleitung nicht rauslesen können.

Ein Platzhalter in SoSci Survey besteht immer aus einem Text Ihrer Wahl (z.B. "video") und einem Prozentzeichen vorne und hinten. Und dieser Text wird dann beim Erstellen der Fragebogen-Seite durch etwas anderes ersetzt.

> Wenn ich jetzt den Fragebogen durchgehe, kommt das Video gemuted.

Sehr gut.

> Verstehe ich es richtig, dass ich auf die gleiche Seite zwei mal einen PHP Code einsetzen muss - einmal für muted und einmal ohne muted?

Sie würden im nächsten Schritt einen kleinen PHP-Filter bauen, der abhängig vom ersten Zufallsgenerator entweder

text('VN01');

oder

text('VN02');

aufruft. Also, wenn der Text ohne "muted" bei Ihnen VN02 ist. Sonst entsprechend eine andere Kennung.

Das replace('%video%', 'pro://2.2.mp4'); lassen sie erstmal vor dem Filter stehen, darum kümmern wir uns damm im nächsten Schritt.
by s335392 (110 points)
edited by s335392
Vielen Dank!
Ich bin nun folgendermaßen vorgegangen:

Ich habe zunächst bei allen meinen Videos die Kontrollelemente deaktiviert, sobald das Video gestartet wurde.

Ich habe einen PHP Code in meinem Fragebogen eingefügt:
replace('%video%', 'pro://2.1.mp4');
text('VN01');

if (value('ZG01') == 1) {
  question('TB08');
} else {
  question('TB07');
}

in ZG01 steht bei Zettel (Inhalte):
1 = Ton
2 = ohne Ton

TB08:
<video style="max-width: 100%" controls controlsList="nodownload" id="%video%">
  <source src="%video%" type="video/mp4" />
</video>

TB07:
<video style="max-width: 100%" controls controlsList="nodownload" id="%video%" muted >
  <source src="%video%" type="video/mp4" />
</video>
 
Wenn ich nun den Fragebogen starte dann kommt das Video "pro://2.1.mp4" gemuted (wie zuvor). Unten drunter kommt ein neues Fenster für das Video und gemuted und nicht gemuted funktioniert. Nur die Kontrollelemente bleiben noch.
Ist das soweit alles richtig so?

Ich verstehe gerade noch nicht, weshalb mir aber immer das gleiche Video angezeigt wird, obwohl dies vor dem Einfügen des Platzhalters immer randomisiert wurde, oder wird das jetzt noch behoben?

Vielen Dank für Ihre Hilfe!
by s000002 (352k points)
> Wenn ich nun den Fragebogen starte dann kommt das Video "pro://2.1.mp4" gemuted (wie zuvor). Unten drunter kommt ein neues Fenster für das Video und gemuted und nicht gemuted funktioniert.

Also, eigentlich sollten sie abhängig von der Ziehung in ZG01 das Video nur entgweder gemutet oder nicht-stumm bekommen. Bitte stellen Sie sicher, dass auf der Seite nur noch der Zufallsgenerator steht und der PHP-Code, aber sonst nichts.

> text('VN01');

Was ist denn VN01?

> Ich verstehe gerade noch nicht, weshalb mir aber immer das gleiche Video angezeigt wird

Wegen dieser Zeile:

replace('%video%', 'pro://2.1.mp4');

Da müssen wir nun im nächsten Schritt noch die Randomisierung einbinden. Und zwar soll ja abhängig vom ZG01 aus unterschiedlichen Zufallsgeneratoren gezogen werden. Wenn diese ZG02 und ZG03 heißen, würden sie diese erstmal dynamisch in dem Filter einbinden:

if (value('ZG01') == 1) {
  question('ZG02');
  replace('%video%', 'ZG02x1', 'response');
  question('TB08');
} else {
  question('ZG03');
  replace('%video%', 'ZG03x1', 'response');
  question('TB07');
}

Wenn das nicht auf Anhieb funktioniert, posten Sie bitte die Debug-Information von der Fragebogen-Seite.
by s335392 (110 points)
Ok, ich habe den"text" behoben. Wenn ich folgendes im php-code habe, dann erscheint das video mal mit ton mal ohne ton:
replace('%video%', 'pro://2.1.mp4');
if (value('ZG01') == 1) {
  question('TB08');
} else {
  question('TB07');
}

Nun habe ich den if code hinzugefügt:
if (value('ZG01') == 1) {
  question('ZG02');
  replace('%video%', 'ZG02x1', 'response');
  question('TB08');
} else {
  question('ZG03');
  replace('%video%', 'ZG03x1', 'response');
  question('TB07');
}

Es kommt:
[Information]    Interview gestartet (neue Nummer 196)
[Information]    Der Fragebogen base im Projekt Tanzdarbietungen wird verwendet
[Verarbeitung]    Erstelle Seite 7 in Fragebogen base
[Inhalt]    Erstelle Frage ZG01
[Information]    Vom Zufallsgenerator ZG01 wurden folgende Codes gezogen: 2
[Information]    value("ZG01") = 2
[Inhalt]    Erstelle Frage TB07
[Information]    value("ZG01") = 2
[Inhalt]    Erstelle Frage ZG03
[Information]    Vom Zufallsgenerator ZG03 wurden folgende Codes gezogen: 4, 9
[Inhalt]    Erstelle Frage TB07
[Information]    Folgende Platzhalter sind vorbereitet:
%video% = (Text) index.php?i=PBY9D0FWDK76&file=1&rnd=5428

Ich erhalte dabei drei Videos:
TB07
ohne Ton muted

ZG03
ZG negativ


TB07
ohne Ton muted

und: "Die Variable ZG03x1 gibt es in diesem Projekt nicht (siehe Variablen-Übersicht). Daher kann kein Antwort-Wert dafür ermittelt werden." - wenn ich dann die variable ändere auf "ZG03" kommt auch die Meldung, es gäbe die Variable nicht. Diese gibt es aber in meiner Rubrik. Ich habe ZG01 (mit/ohne ton), ZG02(positiv) und ZG03(negativ).

Ich habe mehrere Varianten ausprobiert, es kommt immer wieder diese Meldung. Ich habe auf der Seite ausschließlich den ZG Ton und den PHP-Code mit dem oben beschriebenen Inhalt. Muss ich vielleicht noch die anderen Zufallsgeneratoren auf diese Seite einfügen? Danke!!
by s000002 (352k points)
> Nun habe ich den if code hinzugefügt:

Der Code ersetzt den vorigen. Wenn Sie genau hinsehen, wurden da in beiden Zweigen der IF-Bedingung jeweils 2 Zeilen ergänzt, die sich nur im verwendeten Zufallsgenerator unterscheiden.

> ZG03
> ZG negativ

Wenn Sie in den Zufallsgenerator direkt die Dateinamen schreiben, machen sie sich das Leben einfacher. Ach ja, Sie wollten ja 2 positive und 2 negative Videos zeigen. Heißt, (a) Sie müssen in den Zufallsgeneratoren mit den Videos (4 Stück) erstmal einstellen, dass pro Interview 2 Videos gezogen werden. Das ist zumindest in ZG03 noch nicht der Fall.

Und dann (b) müssten sie mir bitte verraten, welches die beiden Zufallsgeneratoren mit negativen, und welches die mit positiven Videos sind?
by s335392 (110 points)
Genau das hatte ich zuerst probiert, dann kam folgende Fehlermeldung (Deshalb dachte ich, vielleicht muss ich das doch hinzufügen):
"Die Variable ZG03x1 gibt es in diesem Projekt nicht (siehe Variablen-Übersicht). Daher kann kein Antwort-Wert dafür ermittelt werden.

Warnung (Seite 7)
Für den Platzhalter %video% wurde weder ein Eingabefeld mit prepare_input() vorbereitet, noch ein Inhalt mit replace() festgelegt."

Debug:
[Information]    Interview gestartet (neue Nummer 202)
[Information]    Der Fragebogen base im Projekt Tanzdarbietungen wird verwendet
[Verarbeitung]    Erstelle Seite 7 in Fragebogen base
[Inhalt]    Erstelle Frage ZG01
[Information]    Vom Zufallsgenerator ZG01 wurden folgende Codes gezogen: 2
[Information]    value("ZG01") = 2
[Inhalt]    Erstelle Frage ZG03
[Information]    Vom Zufallsgenerator ZG03 wurden folgende Codes gezogen: 4, 9
[Inhalt]    Erstelle Frage TB07

Meinen Sie die Dateinamen der Videos? Ich habe in meine Zufallsgenerator die Dateinamen der Videos in Zettel (Inhalte) geschrieben. Also für ZG02 (ZG positiv) alle 8 Dateien mit der jeweiligen Bezeichnung: "1 = pro://1.1.mp4" und das gleiche für ZG03 (ZG negativ), ebenfalls 8 Dateinamen.

Das ist komisch ich habe eigentlich bei beiden Zufallsgeneratoren (positiv und negativ) eine Ziehung von 2 Zetteln pro Interview drinstehen.

So habe ich meine Zufallsgeneratoren zugeteilt:

ZG01 > ZG_Ton

ZG02 > ZG positiv

ZG03 > ZG negativ

Vielleicht noch als Ergänzung: Ich weiß nicht ob das gerade wichtig ist für den Code. Ich möchte auf einer Seite immer nur ein Video zeigen danach Fragen dazu stellen und dann die nächste Seite Video und erneut Fragen. Wahrscheinlich kann ich dann für jede Seite den Code nach gleichem Muster anpassen?

Vielen Dank für Ihre Geduld!
by s000002 (352k points)
> [Information]    Vom Zufallsgenerator ZG01 wurden folgende Codes gezogen: 2

Okay, soweit so gut.

> [Information]    Vom Zufallsgenerator ZG03 wurden folgende Codes gezogen: 4, 9

Sehen Sie doch in der Variablen-Übersicht bitte kurz nach, ob die Variablen ZG03x1 oder ZG03x01 (also mit einer 0 mehr) heißen. Jedenfalls können Sie diese anschließend für das replace() verwenden.

> Meinen Sie die Dateinamen der Videos?

Ja, genau. So, wie Sie es beschreiben, klingt es korrekt.

Ich sehe allerdings in den Debug-Infos noch nicht, dass auch aus ZZG02 gezogen wird. So oder so ähnlich sollte es aussehen:

if (value('ZG01') == 1) {
  question('ZG02');
  question('ZG03');
  // Anzeige
  replace('%video%', 'ZG02x1', 'response');
  text('TB07');
  replace('%video%', 'ZG02x2', 'response');
  text('TB07');
  replace('%video%', 'ZG03x1', 'response');
  text('TB07');
  replace('%video%', 'ZG03x2', 'response');
  text('TB07');
} else {
  question('ZG04');
  question('ZG05');
  // Anzeige
  replace('%video%', 'ZG04x1', 'response');
  text('TB08');
  replace('%video%', 'ZG04x2', 'response');
  text('TB08');
  replace('%video%', 'ZG05x1', 'response');
  text('TB08');
  replace('%video%', 'ZG05x2', 'response');
  text('TB08');
}

Damit würden nun alle 4 Videos direkt untereinander angezeigt. Natürlich kann man die replace()-question
by s335392 (110 points)
Achso, nun verstehe ich das mit den Variablen, ich habe immer nur nach der Bezeichnung geschaut aber nicht nach den Variablen. Also diese sind „ZG02x01“ & „ZG02x02“, „ZG03x01“ & „ZG03x02“. Ich habe diese abgeändert und es kommt nun keine Fehlermeldung, danke!

Mir wird nur das Video zwei Mal gezeigt:
-    einmal so wie ich die HTML-Codes für die Videos habe (damit sie auf einen Bildschirm passen):
<video playsinline muted controls style="width: 360px; height: 640px; object-fit: cover; display: block; margin: 0 auto; background-color: black;" id="stimulus">

-    Und einmal in ganz groß über den Bildschirm.

Ich verstehe noch nicht wieso zwei Mal, denn ich habe auf der Seite nur den Zufallsgenerator und den PHP Code:
if (value('ZG01') == 1) {
  question('ZG02');
  replace('%video%', 'ZG02x01', 'response');
  text('TB08');
} else {
  question('ZG03');
  replace('%video%', 'ZG03x01', 'response');
  text('TB07');
}

Das zweite Video sollte wahrscheinlich eigentlich der Zettel des anderen Zufallgenerators sein oder? Denn in der Debug Info steht auch, dass nur aus einem gezogen wird. Wie könnte ich das beheben?

[Information]    Interview gestartet (neue Nummer 229)
[Information]    Der Fragebogen base im Projekt Tanzdarbietungen wird verwendet
[Verarbeitung]    Erstelle Seite 7 in Fragebogen base
[Inhalt]    Erstelle Frage ZG01
[Information]    Vom Zufallsgenerator ZG01 wurden folgende Codes gezogen: 1
[Information]    value("ZG01") = 1
[Inhalt]    Erstelle Frage ZG02
[Information]    Vom Zufallsgenerator ZG02 wurden folgende Codes gezogen: 5, 3
[Inhalt]    Zeige Text TB08
[Information]    Folgende Platzhalter sind vorbereitet:
%video% = (Text) index.php?i=DW7NA69G7AWN&file=1&rnd=5259


-    Wenn ich jetzt auf jeder Seite auf dem ein Video erscheinen soll platziere einen PHP-Code nach diesem Muster (angepasst an positiv oder negativ) platziere, dann müsste die Randomisierung funktionieren oder?

Hierzu noch eine Frage: Ich habe zu Beginn einen Platzhalter für den Dateinamen bei einem Video eingefügt. Sollte ich das für alle 18 Videos machen? Oder erkennt der Code dann nicht mehr welches Video es ist?

Eine weitere Frage: ZG04x1 und ZG05x1 aus ihrem Code > auf was genau bezieht sich das? Weil ich habe ja eigentlich nur drei Zufallsgeneratoren (ZG01, ZG02 &ZG03).
by s000002 (352k points)
> Ich verstehe noch nicht wieso zwei Mal, denn ich habe auf der Seite nur den Zufallsgenerator und den PHP Code:

Stellen Sie bitte sicher, dass im Zufallsgenerator unter "HTML-Code" nichts mehr steht. Also in keinem der Zufallsgeneratoren.

>  Wenn ich jetzt auf jeder Seite auf dem ein Video erscheinen soll platziere einen PHP-Code nach diesem Muster

Ja, korrekt.

>  Ich habe zu Beginn einen Platzhalter für den Dateinamen bei einem Video eingefügt. Sollte ich das für alle 18 Videos machen?

Sie sollten nur zwei HTML-Codes haben, TB07 und TB08, und sort sollten sie Platzhalter verwenden. Was genau meinen Sie mit "alle 18 Videos"? Ich frage deshalb, weil Sie bei den hochgeladenen Video-Dateien ja nichts eingeben können.

> Weil ich habe ja eigentlich nur drei Zufallsgeneratoren (ZG01, ZG02 &ZG03).

ZG02 = Zufallsgenerator mit neg. Videos für Bedingung "ohne Ton"
ZG03 = Zufallsgenerator mit pos. Videos für Bedingung "ohne Ton"
ZG04 = Zufallsgenerator mit neg. Videos für Bedingung "mit Ton"
ZG05 = Zufallsgenerator mit pos. Videos für Bedingung "mit Ton"

Wird es damit klarer? Damit Sie die statistische Unabhängigkeit zwischen "mit/ohne Ton" und den Videos gewährleisten, ziehen Sie je nach Bedingung aus unterschiedlichen Zufallsgeneratoren.
by s335392 (110 points)
Wow vielen herzlichen Dank, ich glaube es funktioniert!!

> Stellen Sie bitte sicher, dass im Zufallsgenerator unter "HTML-Code" nichts mehr steht. Also in keinem der Zufallsgeneratoren.
Das war tatsächlich mein Fehler.

> Sie sollten nur zwei HTML-Codes haben, TB07 und TB08, und sort sollten sie Platzhalter verwenden. Was genau meinen Sie mit "alle 18 Videos"? Ich frage deshalb, weil Sie bei den hochgeladenen Video-Dateien ja nichts eingeben können.
Das konnte ich auch beheben. Ich hatte für jedes hochgeladene Video nochmal einen Textbaustein erstellt, weil ich dachte ich müsste sie auf diese Weise integrieren.

Ok ich glaube jetzt ist es auf jeden Fall klarer, nur noch einmal zur Absicherung: Und zwar ziehe ich ja jeweils zwei Zettel zum Beispiel von positiv. Der zweite Zettel soll ja logischerweise nicht das gleiche Video beinhalten, wie der erste Zettel, das habe ich aber mit der Verwendung der Variablen behoben oder? Zum Beispiel, ZG02x01 und auf der anderen Seite ZG02x02:

Video 1 positiv
if (value('ZG01') == 1) {
  question('ZG02');
  replace('%video%', 'ZG02x01', 'response');
  text('TB08');
} else {
  question('ZG04');
  replace('%video%', 'ZG04x01', 'response');
  text('TB07');
}

Video 2 negativ
if (value('ZG01') == 1) {
  question('ZG03');
  replace('%video%', 'ZG03x01', 'response');
  text('TB08');
} else {
  question('ZG05');
  replace('%video%', 'ZG05x01', 'response');
  text('TB07');
}

Video 3 positiv
if (value('ZG01') == 1) {
  question('ZG02');
  replace('%video%', 'ZG02x02', 'response');
  text('TB08');
} else {
  question('ZG04');
  replace('%video%', 'ZG04x02', 'response');
  text('TB07');
}

Video 4 negativ
if (value('ZG01') == 1) {
  question('ZG03');
  replace('%video%', 'ZG03x02', 'response');
  text('TB08');
} else {
  question('ZG05');
  replace('%video%', 'ZG05x02', 'response');
  text('TB07');
}

Jetzt fehlt mir noch eine Sache. Ich habe zuvor bei meinen Textbausteinen der Videos hinbekommen, dass die Kontrollelemente ausgeblendet werden und hatte folgenden Code, der funktioniert hat:
<video playsinline muted controls style="width: 360px; height: 640px; object-fit: cover; display: block; margin: 0 auto; background-color: black;" id="stimulus">
  <source src="pro://1.5.mp4" type="video/mp4" />
</video>

<script type="text/javascript">
<!--
 
var video = document.getElementById("stimulus");
 
// Bedienelemente ausblenden, sobald es abspielt
SoSciTools.attachEvent(video, "play", function(evt) {
  video.removeAttribute("controls");
});
// Weiter-Knopf ausblenden
SoSciTools.attachEvent(window, "load", function(evt) {
  SoSciTools.submitButtonsHide();
});
// Weiter-Knopf am Ende des Videos wieder anzeigen
SoSciTools.attachEvent(video, "ended", function(evt) {
  SoSciTools.submitButtonsDisplay();
});
 
// -->
</script>

Nun benutze ich ja nur den Text von TB07 und TB08 mit meinen Platzhaltern. Jetzt habe ich hier auch einen solchen Code eingefügt und geschaut, dass eine id vorhanden ist, aber komischerweise funktioniert das Ausblenden nun nicht, habe ich irgend einen Fehler übersehen in meinem Code:
<video playsinline muted controls style="width: 360px; height: 640px; object-fit: cover; display: block; margin: 0 auto; back-ground-color: black;" id="%video%">
  <source src="%video%" type="video/mp4" />
</video>

<script type="text/javascript">
<!--
 
var video = document.getElementById("%video%");
 
// Bedienelemente ausblenden, sobald es abspielt
SoSciTools.attachEvent(video, "play", function(evt) {
  video.removeAttribute("controls");
});
// Weiter-Knopf ausblenden
SoSciTools.attachEvent(window, "load", function(evt) {
  SoSciTools.submitButtonsHide();
});
// Weiter-Knopf am Ende des Videos wieder anzeigen
SoSciTools.attachEvent(video, "ended", function(evt) {
  SoSciTools.submitButtonsDisplay();
});
 
// -->
</script>

Ich habe statt "stimulus" > "%video%" eingefügt.
Vielen Dank!
by s000002 (352k points)
Die ID müssen sie fix vergeben, also nicht

id="%video%"
var video = document.getElementById("%video%");

sondern

id="video"
var video = document.getElementById("video");

Ob das nun "stimulus" oder "video" oder "schnitzel" heißt, spielt keine Rolle, es muss nur ein (a) eindeutiger und (b) gültiger Name sein.
by s335392 (110 points)
hat funktioniert. Herzlichen Dank für die Tipps!!

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

...