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

Ich benutze einen Zufallsgenerator, um ein zufälliges Bild auf der ersten Seite anzuzeigen.
Auf der zweiten Seite der Umfrage möchte ich ein neues Bild zufällig generieren, dass ungleich dem ersten zufälligen Bild ist.
Wenn ich den Zufallsgenerator auf Seite 1 und 2 benutze, dann ist auf beiden Seiten dasselbe Bild.

Wie kann ich auf der zweiten Seite ein anderes Bild anzeigen, dass ungleich dem ersten Bild ist?

in SoSci Survey (dt.) by s219837 (165 points)

1 Answer

0 votes

Lassen Sie den Zufallsgenerator pro Interview nicht nur ein Bild ziehen, sondern gleich zwei. Und dann verwenden Sie ein wenig PHP-Code (es wird nur eine replace()-Zeile sein), um einmal das erste und einmal das zweite anzuzeigen.

by SoSci Survey (229k points)
Danke für die Antwort. Können Sie mir etwas genauer erklären, wie das mit dem PHP Code funktioniert? Wie kann ich auf das zweite Bild zugreifen? Bisher greife ich auf das erste mit %random% zu.
Prinzipiell will ich nicht nur zwei solche Seiten haben, sondern eher n-viele.
Sie haben bei 2 (oder mehr) gezogenen Zetteln pro Interview 2 (oder mehr) Variablen im Zufallsgenerator. Wenn der die Kennung RG01 hat, wäre die zweite Ziehung z.B. RG01x2

Der Abruf und die Anzeige via Platzhalter %random% in einem Text TX01 könnte dann z.B. so aussehen:

$runde = 2;
$bildname = value(id('RG01', $runde), 'label');
show('TX01', ['%random%' => $bildname]);

Nein, das ist nicht ganz trivial zu lesen .... sollte aber mit ein wenig Stöbern in der Anleitung zu id() und value() gut nachvollziehbar sein? Die Nummer für das BIld habe ich hier extra in eine separate Variable ausgelagert, denn damit kann man auch 20 Bilder und ggf. Fragen im Prinzip über eine einzige Seite abarbeiten, die mittels loopPage() immer wiederholt wird.
...