0 votes
in SoSci Survey (dt.) by s105656 (190 points)
edited by SoSci Survey

Hallo,

ich rotiere via shuffle die Keys meiner 48 Bilder. Diese werden dann über looppage() auf einer Seite dargestellt und über einen Schieberegler bewertet. eingeteilt wird über einen Zufallsgenerator in eine von zwei Gruppen EX01 und EX02.

ich dachte erst, dass ich so schon was mit den Daten anfangen kann. Jetzt habe ich aber gemerkt, dass ich die Bilder zu den Schiebereglerwerten nicht mehr zuordnen kann. Dafür hatte ich dann eine einfache put() funktion hinzugefügt, es scheint mir aber, als passen die Werte von put() und die geshufflete Bildwiedergabe nicht zusammen.

Woran könnte das liegen?

Am Ende muss ich irgendwie den Wert des Schiebereglers mit dem Bild in Verbindung bringen können.

Da ich meine loopPage() schon in $i definiert habe, habe ich den Zähler der put()-Funktion mit $n definiert.

Im folgenden der Code dazu:

$bilder = array(
  1 => 'Orig10.png',
  2 => 'Orig11.png',
  3 => 'Orig16.png',
  4 => 'Orig22.png',
  5 => 'Orig23.png',
  6 => 'Orig42.png',
  7 => 'Orig47.png',
  8 => 'Orig51.png',
  9 => 'Orig66.png',
  10 => 'Orig68.png',
  11 => 'Orig91.png',
  12 => 'Orig97.png',
  13 => 'Orig98.png',
  14 => 'Orig99.png',
  15 => 'Orig109.png',
  16 => 'Orig113.png',
  17 => 'LSF1.png',
  18 => 'LSF4.png',
  19 => 'LSF7.png',
  20 => 'LSF14.png',
  21 => 'LSF15.png',
  22 => 'LSF19.png',
  23 => 'LSF21.png',
  24 => 'LSF26.png',
  25 => 'LSF72.png',
  26 => 'LSF73.png',
  27 => 'LSF75.png',
  28 => 'LSF77.png',
  29 => 'LSF81.png',
  30 => 'LSF84.png',
  31 => 'LSF86.png',
  32 => 'LSF89.png',
  33 => 'HSF28.png',
  34 => 'HSF33.png',
  35 => 'HSF35.png',
  36 => 'HSF38.png',
  37 => 'HSF39.png',
  38 => 'HSF43.png',
  39 => 'HSF49.png',
  40 => 'HSF52.png',
  41 => 'HSF61.png',
  42 => 'HSF62.png',
  43 => 'HSF64.png',
  44 => 'HSF67.png',
  45 => 'HSF71.png',
  46 => 'HSF82.png',
  47 => 'HSF87.png',
  48 => 'HSF88.png',
);

if (!isset($keys)) {
  $keys = array_keys($bilder);
  shuffle($keys);
registerVariable($keys);
}

$i = loopPage(48);
$x = $keys[$i];

html('<div style="text-align: center; margin-bottom: 2em"><img src="'.$bilder[$x].'" alt=""></div>');

if (value('RG04') ==1) {
  pageCSS('div.extendedItem {
     padding: 0px 4px 8px 260px;
}');} elseif (value('RG04') == 2) {
  pageCSS('div.extendedItem {
     padding: 0px 4px 8px 240px;
}');
}

if (value('RG04') == 1) {
  question('EX01', $i + 1);
} elseif (value('RG04') == 2) {
  question('EX02', $i + 1);
} 

///Speichern der Reihenfolge $keys
for ($n=0; $n<count($keys); $n++) {
   /// Kennung der internen Variable aus Frage-Kennung plus Inhalt des Elements (!) erstellen
 $id = id('EX04', $keys[$n]);
   /// Hier den Rang speichern
  put($id, $n + 1);
}
by s105656 (190 points)
html('<div style="text-align: center; margin-bottom: 2em"><img src="'.$bilder[$x].'" alt=""></div>');
 ///Die stelle wurde in meinem Beitrag nicht richtig dargestellt

1 Answer

0 votes
by SoSci Survey (328k points)

Am Ende muss ich irgendwie den Wert des Schiebereglers mit dem Bild in Verbindung bringen können.

Dann schreiben Sie bitte

if (value('RG04') == 1) {
  question('EX01', $x);
} elseif (value('RG04') == 2) {
  question('EX02', $x);
}

Dann ist die Bewertung für Bild 1 (Orig10.png) immer in EX01_01 bzw. EX02_01. Das erleichtert die Auswertung um Längen :)

by s105656 (190 points)
edited by s105656
Ich hatte es jetzt so gelöst.

$n = 0;
foreach ($keys as $x) {
  $n++;
  put(id('EX04', $n), $x);
}

probiere ihre Lösung aber direkt mal aus. Danke

EDIT:  Danke, WESENTLICH besser!

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

...