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 habe es mit Ihrem Code versucht, leider werden im Fragebogen immer noch mehr als 3 Bilder angezeigt. Wo im Code liegt denn die Doppelung?

Diesen Code habe ich nun verwendet:

if (!isset($seiten)) {
  $pages = array('PA','PB','PC');
  // Die Seiten nicht direkt mischen, sondern deren Positionen
  $indices = array_keys($pages);
  shuffle($indices);
  // Nun die Ränge speichern - und die neue Abfolge der Seiten in $random speichern
  $seiten = array();
  for ($i=0; $i<count($indices); $i++) {
    // Rang speichern wie oben
    $id = id('AN09', $indices[$i] + 1);
    put($id, $i + 1);
    // Seite in der Abfolge speichern
    $seiten[$i] = $pages[$indices[$i]];
  }
}
// Neue Seitenabfolge setzen
setPageOrder($seiten);

Langsam bin ich doch etwas verzweifelt, da ich nicht viel Ahnung von den Codes habe!
Ich hoffe abermals auf Ihre Hilfe:)

related to an answer for: Zufällige Seitenabfolge
in SoSci Survey (dt.) by s090195 (120 points)
edited by SoSci Survey
Tipp: Mit dem Symbol {} können Sie Code in der Frage als solchen formatieren. Dann ist er deutlich besser lesbar (s. oben geändert).

1 Answer

0 votes

Beim entfernen der doppelten Rotation habe ich versehentlich auch den Teil entfernt, wo es nach der letzen Seite weitergehen soll:

$seiten[] = 'PX';

Hier nochmal im Kontext:

if (!isset($seiten)) {
  $pages = array('PA','PB','PC');
  // Die Seiten nicht direkt mischen, sondern deren Positionen
  $indices = array_keys($pages);
  shuffle($indices);
  // Nun die Ränge speichern - und die neue Abfolge der Seiten in $random speichern
  $seiten = array();
  for ($i=0; $i<count($indices); $i++) {
    // Rang speichern wie oben
    $id = id('AN09', $indices[$i] + 1);
    put($id, $i + 1);
    // Seite in der Abfolge speichern
    $seiten[$i] = $pages[$indices[$i]];
  }
  $seiten[] = 'PX';
}
// Neue Seitenabfolge setzen
setPageOrder($seiten);
by SoSci Survey (229k points)
Nochmal vielen Dank! Ich finde es so klasse wie schnell Sie antworten!
Interessanter weise, habe ich den unteren Teil:

// Neue Seitenabfolge setzen
setPageOrder($seiten);

entfernt und dann wurden wieder nur 3 Bilder angezeigt, auch ohne $seiten[] = 'PX';
Sollte ich aber besser noch anpassen, oder?!
Nun, ohne setPageOrder() hat der Code keine Wirkung und die Seiten werden in der immer gleichen vorgegeben Reihenfolge angezeigt...
...