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 zusammen,

das funktioniert. Ich ziehe jetzt per Zufallsgenerator 40 Personen aus meinem Set an 60 Personen.

In Runde 1 zeige ich die ersten 30 (15 in glücklich und 15 in traurig). Welche das sind weiß ich, anhand meines arrays. Die ersten 5 in der Variable ZG01 wurden glücklich gezeigt, die nächsten 5 traurig, die nächsten 5 glücklich, die nächsten 5 traurig usw.

Hier nochmal der Code von Seite 1:

// Abfolge der Bilder rotieren
// isset prüft ob eine Variable existiert und sie nicht NULL ist 
if (!isset($order)) {
  $order = [];
  for ($i=1; $i<=30; $i++) {
$order[] = $i;
  }
  shuffle($order);
//mit registerVariable die Variable für die folgenden PHP Elemente merken 
  registerVariable($order);
}

// Varianten der Bilder fix definieren
// 1=happy 2=sad
$variante = [1,1,1,1,1,2,2,2,2,2,1,1,1,1,1,2,2,2,2,2,1,1,1,1,1,2,2,2,2,2];
foreach ($variante as $i => $var) 

// Die ersten 30 Bilder anzeigen
$i = loopPage(30);
// Aber in der Reihenfolge wie in $order gespeichert
$num = $order[$i];
$basis = value(id('ZG01', $num), 'label');
//wenn 1, dann zeige Bild mit Endung .h; wenn 2, dann zeige Bild mit Endung .s
if ($variante[$num - 1] == 1) {
  $bild = $basis.'_h.jpg';
} else {
  $bild = $basis.'_s.jpg';
}
html('
  <div style="margin: 3em; text-align: center">
  <img src="'.$bild.'" alt="" /; style="max-width: 50%">
  </div>
');

In Runde 2 geht es dann ums wiedererkennen. Hier zeige ich alle 40 Bilder aus dem Zufallsgenerator. Welche neu sind weiß ich, weil das die Bilder Nummer 31 - 40 aus dem Zufallsgenerator sind. Die Reihenfolge in Runde 2 speichere ich außerdem noch in IV02 (was wahrscheinlich sogar überflüssig ist.

Zu jedem Bild zeige ich eine Frage aus der Variable RE21, das klappt und die Antwort (codiert als 1=ja und 2=nein) kann ich ebenfalls sehen.

Hier nochmal der Code aus Runde 2:

> if(!isset($bilder2)){
> $bilder2=array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40);
> shuffle($bilder2); registerVariable($bilder2); }
> 
> for ($i=0; $i<count($bilder2); $i++) { $id = id('IV02', $i + 1);
> put($id, value(id('ZG01', $bilder2[$i]))); }
> 
> $i = loopPage(40); $num = $bilder2[$i]; $basis = value(id('ZG01',
> $num), 'label'); $bild = $basis.'_n.jpg'; html('<div style="margin:
> 3em; text-align: center"> <img src="'.$bild.'" alt="" /;
> style="max-width: 50%"> </div>'); question('RE21', $num);

Meine Frage:

Wie bekomme ich die Antwort dem Bild zugeordnet? Woher weiß ich, welches Bild mit ja und welches mit Nein beantwortet wurde? Hierbei hänge ich noch...

Ich habe versucht einmal alle Antworten aufzuschreiben, habe die ersten 30 mit ja und die letzten 10 mit nein beantwortet. In meinen Daten sind dann aber alle Einsen und Zweien durcheinander und ich bekomme sie nicht mehr zugeordnet...

related to an answer for: Eine Frage einem Bild zuordnen
in SoSci Survey (dt.) by s095605 (350 points)

1 Answer

0 votes

Wie bekomme ich die Antwort dem Bild zugeordnet?

Die Zuordnung haben Sie in den Variablen ZG01x...

Das Bild mit dem Code, der in ZG01x1 vermerkt ist wurde in der ersten Runde auf Platz 1 angezeigt. Und entsprechend gehört es zu der Variable RE21_01.

Fügen Sie im zweiten Code am Ende einmal folgendes hinzu:

debug($num);
debug($basis);

Dann sollten Sie in den Debug-Informationen sehr gut prüfen können, ob das auch so stimmt.

by SoSci Survey (206k points)
Daten interpretieren
...