0 votes
in SoSci Survey (dt.) by s078619 (145 points)
closed by SoSci Survey

Sehr geehrte Damen und Herren,

ich habe bei SoSciSurvey 2 Rubriken (Rubrik 1 mit 47 Items und Rubrik 2 mit 90 Items) erstellt. Diese möchte ich auf 2 (Rubrik 1) bzw. 3 seiten (Rubrik 2) folgebdermaßen verteilt darstellen und dabei zufällig rotieren:

Rubrik 2: 24 Items
Rubrik 1: 24 Items
Rubrik 2: 24 Items
Rubrik 1: 23 Items
Rubrik 2: 24 Items
Rubrik 2: 18 Items

Ich habe bereits versucht, den PHP-Code für die zufällige Item Rotation anzuwenden, um das gewünschte Blockdesign zu erhalten, dies ist mir jedoch nicht gelungen.

Über eine hilfreiche Antwort wäre ich sehr erfreut.

Mit freundlichen Grüßen!

closed with the note: Es liegen keine weiteren Informationen zu dem Problem vor, welche für eine hilfreiche Antwort erforderlich wären.
by s109993 (12.0k points)
posten Sie einmal den PHP Code, mit dem Sie es versucht haben.
by SoSci Survey (328k points)
Von der logischen Ordnung her verwendet SoSci Survey ja Rubrik -> Frage -> Item.


Könnten Sie bitte nochmal spezifizieren, ob Sie mit "Items" im technischen Sinne "Fragen" meinen - oder etwas ganz anderes?
by s078619 (145 points)
Guten Tag,

gemeint sind Items, z.B. "Ehrlich währt am längsten", die auf einer 6-stufigen Likert-Skala beantwortet werden sollen.
by s078619 (145 points)
Guten Tag,

ich wusste generell erstmal nicht, wie ich das Schema im Blockdesign wie oben beschrieben per php-code erstellen kann.
Zunächst wollte ich deswegen die 90 Items der Rubrik 2 (B002) auf vier Seiten aufteilen und zufällig rotieren mit dem folgenden php-Code, was nicht funktioniert hat:


if (!isset($itemsB002)) {
  // Alle Items der Frage B002 auflisten
  $itemsB002 = getItems('B002', 'all');
  // Liste Mischen
  shuffle($itemsB002);
  // Die Liste in Teillisten à 25 Items teilen
  $itemsB002 = array_chunk($itemsB002, 25);
  // Die Variable für andere Seiten verfügbar machen
  registerVariable($itemsB002);
}

// Erste Seite
question('B002', $itemsB002[0]);
 
// Zweite Seite
question('B002', $itemsB002[1]);
 
// Dritte Seite
question('B002', $itemsB002[2]);

// Vierte Seite
question('B002', $itemsB002[3]);


die Items wurden dabei jedoch leider in Blöcken auf einer Seite angezeigt.
by SoSci Survey (328k points)
Der Code sieht eigentlich gut aus. Könnte es sein, dass Sie neben dem PHP-Code noch die Frage B002 auf die Seite gezogen haben? Die muss dann nämlich raus.
by s078619 (145 points)
Nein, ich hatte lediglich den php-code auf der Seite.

Mit dem folgenden Code sind die Items zwar verteilt auf verschiedene Seiten, aber ab Seite 5 kommt eine Fehlermeldung:

 if (!isset($itemsB002)) {
  // Alle Items der Frage B002 auflisten
  $itemsB002 = getItems('B002', 'all');
  // Liste Mischen
  shuffle($itemsB002);
  // Die Liste in Teillisten à 24 Items teilen
  $itemsB002 = array_chunk($itemsB002, 24);
  // Die Variable für andere Seiten verfügbar machen
  registerVariable($itemsB002);
}

// Die Items über mehrere Seiten verteilt anzeigen
$i = loopPage(count($itemsB002));
question('B002', $itemsB002[$i]);

Fehlermeldung:
Eine oder mehrere Variablen (einige Variablen aufgelistet) wurden bereits auf Seite 1 abgefragt. Bitte beachten Sie, dass die Antworten von Seite 1 hier angezeigt und anschließend überschrieben werden. Falls Sie eine gleichartige Frage mehrfach benötigen, erstellen Sie eine Kopie der Frage.
by SoSci Survey (328k points)
>aber ab Seite 5 kommt eine Fehlermeldung:

Ich würde sagen, dass das daran liegt, dass bei Aufteilung in 24 Items pro Block nur 4 Blöcke herauskommen. Kommt über dieser Fehlermeldung vielleicht noch eine andere?

Was zeigt denn debug($itemsB002) an?

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

...