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

Hallo :)

ich möchte auf einer Seite 4 Fragen rotieren lassen zu denen sich jeweils ein Bild NACH der Frage anschließt.

In der Anleitung habe ich folgende Hilfe dazu gefunden.
Hier weiß ich leider mit den unteren Zeilen nichts anzufangen. Muss hier für jedes Bild der html-Tag hinzugefügt werden? (image)
Und kann ich ich diese Erklärungen " // Liste der Frage-Kennungen..." stehen lassen?

if (!isset($blocks)) {
  $blocks = array(  // Liste der Frage-Kennungen und zugehöriger Bilder
    array('IP01', 'Balea_Produkte.jpg'),
    array('IP02', 'Nivea_Produkte.jpg'),
    array('IP03', 'Isana_Produkte.jpg'),
    array('IP04', 'Garnier_Produkte.jpg')
  );
 
  // Die Liste mischen
  shuffle($blocks);
  // Die Listen auf allen Seiten verfügbar machen
  registerVariable('blocks');
}
 
// Anzeige der Blöcke
$i = loopPage(count($blocks));
// Bild anzeigen
html('<p><img src="'.$blocks[$i][1].'" alt="Wahlplakat"></p>');
// Frage anzeigen
question($blocks[$i][0]);

UND wenn ich das als PHP-Code auf der Seite einfüge erscheint folgende Wahrnung:

"Warnung
Bitte beachten Sie, dass die von random() oder shuffle() erzeugten Zufallswerte nicht automatisch im Datensatz gespeichert werden. Zum Speichern können Sie ggf. die Funktion put() verwenden. "

Was ist mit Zufallswerten gemeint? Also geht es darum, dass die Ergebnisse der Fragen nicht im downloadbaren SPSS-Datensatz enthalten sein werden?
Wie kann ich diese Funktion put() in den Code einbinden?

Vielen vielen Dank für die Hilfe!!!
Laura

in SoSci Survey (dt.) by s083927 (130 points)

1 Answer

0 votes

Bitte beachten Sie, dass die von random() oder shuffle() erzeugten Zufallswerte nicht automatisch im Datensatz gespeichert werden. Zum Speichern können Sie ggf. die Funktion put() verwenden.

Ganz genau: Wenn Sie nichts extra speichern, dann werden Sie bei der Analyse nicht nachvollziehen können, in welcher Reihenfolge die Bilder gezeigt wurden. Wenn Sie die Reihenstellungseffekte nicht auswrten möchten, ist das kein Problem (die Antworten zu balea landen ja immer in IP01, jene zu Nivea in IP02, ...) - aber Sie sollten es wissen. Daher die Warnung.

Wie kann ich diese Funktion put() in den Code einbinden?

Falls Sie die Abfolge benötigen, können Sie den Code verwenden, der in der Anleitung zu put() bei den beiden Randomisierungs-Abschnitten steht.

Ach ja: Damit das Bild unter die Frage wandert (das schrieben Sie so), müssten Sie im PHP-Code erst das question() aufrufen und dann das html() - also nur die beiden Zeilen vertauschen.

by SoSci Survey (89.7k points)
Vielen Dank! Das hilft mir sehr weiter. (Nein, richtig, Bilder oder deren Reihenfolge will ich nicht auswerten).

Haben Sie vielleicht auch noch auf diesen Teil meiner Frage bezüglich der Codes einen Hinweis?:

  // Die Liste mischen
  shuffle($blocks);
  // Die Listen auf allen Seiten verfügbar machen
  registerVariable('blocks');
}
 
// Anzeige der Blöcke
$i = loopPage(count($blocks));
// Frage anzeigen
question($blocks[$i][0]);
// Bild anzeigen
html('<p><img src="'.$blocks[$i][1].'" alt="Wahlplakat"></p>');

Hier weiß ich leider mit diesen unteren Zeilen nichts anzufangen. Muss hier für jedes Bild der jeweilige html-Tag hinzugefügt werden? (image)  oder lasse ich das für meine individuelle Situation so stehen wie oben in dem Beispiel?
Und kann ich ich diese Erklärungen " // Liste der Frage-Kennungen..." im PHP-Code stehen lassen?
Also zusammengefasst: muss ich außer die Zeilen (Frage & Bild) zu tauschen noch etwas an diesem Beispielcode anpassen?

Vielen Dank!
Rotation / code Darstellung
Wenn der Code funktioniert, können Sie ihn so belassen. Auf den ersten Blick sieht alles korrekt aus.

Das hinter den Schräfstrichen sind Kommentare. Diese werden in PHP einfach ignoriert - die dienen nur dazu, dass man sich im Code leichter zurechtfindet. Auch nach 14 Tagen noch...
Vielen Dank!
...