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

Hallo SoSciSurvey-Support-Team!

Im Rahmen meiner Masterarbeit möchte ich in meiner Umfrage den Probanden zufällig eines von zwei Videos präsentieren. Da ich nicht ausschließen kann, dass einige die Umfrage mit dem Handy machen, wollte ich nun auf Ihren Rat hin (https://www.soscisurvey.de/help/doku.php/de:create:media#optimierte_einbindung) statt der Nutzung von Autoplay die Bedienelemente ausblenden, sobald das Video abgespielt wird, den Weiter-Knopf ausblenden und den Weiter-Knopf am Ende des Videos wieder anzeigen - wie Sie es auf genannter Seite erklärt haben.

$zahl = value('Z101');

if ($zahl == 1) {
  html('<p><video src="1e.mp4" height="500" controls controlsList="nodownload" id="stimulus"></p>');
} elseif ($zahl == 2) {
  html('<p><video src="1f.mp4" height="500" controls controlsList="nodownload" id="stimulus"></p>');
}


<script type="text/javascript">
<!--
 
var video = document.getElementById("stimulus");
 

SoSciTools.attachEvent(video, "play", function(evt) {
  stimulus.removeAttribute("controls");
});

SoSciTools.attachEvent(window, "load", function(evt) {
  SoSciTools.submitButtonsHide();
});

SoSciTools.attachEvent(stimulus, "ended", function(evt) {
  SoSciTools.submitButtonsDisplay();
});
 

</script>

Diesen Code habe ich eingefügt, doch nun habe ich das Problem, dass ich den Zufallscode mit PHP erstellt habe und die Variable "var" nicht im PHP-Code verwendet werden kann. Wie kann ich den Code anpassen, sodass es funktioniert?

Danke schonmal für Ihre Hilfe!

by s076898 (110 points)
Mein Code wurde nicht ganz angezeigt. Hier ist der komplette Code:

$zahl = value('Z101');

if ($zahl == 1) {
  html('<p><video src="1e.mp4" height="500" controls controlsList="nodownload" id="stimulus"></p>');
} elseif ($zahl == 2) {
  html('<p><video src="1f.mp4" height="500" controls controlsList="nodownload" id="stimulus"></p>');
}


<script type="text/javascript">
<!--
 
var video = document.getElementById("stimulus");
 

SoSciTools.attachEvent(video, "play", function(evt) {
  stimulus.removeAttribute("controls");
});

SoSciTools.attachEvent(window, "load", function(evt) {
  SoSciTools.submitButtonsHide();
});

SoSciTools.attachEvent(stimulus, "ended", function(evt) {
  SoSciTools.submitButtonsDisplay();
});
 

</script>
by SoSci Survey (328k points)
Code kann man mit der {}-Taste als solchen formatieren :)

1 Answer

0 votes
by SoSci Survey (328k points)

Es ist generell nicht möglich, PHP- und JavaScript-Code zu mischen.

PHP-Code läuft auf dem Server zwischen den Fragebogen-Seite.

JavaScript-Code läuft im Browser bei den Nutzern, während diese eine Seite bearbeiten.

Speichern Sie den JavaScript-Code als "Text" (HTML-Code) im Fragenkatalog und ziehen sie ihn auf die gewünschte Seite: JavaScript im Fragebogen

by s076898 (110 points)
Danke für die schnelle Antwort, es klappt jetzt! :)

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

...