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

In meinem Fragebogen besteht meine Seite 13 einfach nur aus einem kurzen Text.
Komischerweise wird der Text aber am Ende der vorherigen Seite, also auf Seite 12 angezeigt und nicht auf der eigenen Seite.

Auf Seite 12 habe ich folgenden PHP-Code:

if ((value('KA01_01') == 2) or (value('KA01_02') == 2) or (value('KA01_03') == 2)) 
{
question('GR01') or question ('GR02');
} 
if ((value('KA01_01') == 1) or (value('KA01_02') == 1) or (value('KA01_03') == 1)) 
{
goToPage('EI');
}

Wenn die Seite 12 also übersprungen wird (weil bestimmte Antwort nicht gewählt wurde), dann funktioniert es super und der Text wird normal auf Seite 13 angezeigt.

Auf Seite 14 und folgenden Seiten habe ich diesen PHP-Code:

// Sicherstellen, dass beim Neu-Laden der Seite nicht neu gezogen wird
 if (!isset($fragen1)){
  // Liste der relevanten Fragen
  $fragen1 = array(
    'ED01', 'ED02', 'ED03', 'ED04', 'ED05',
  );
  // Die Liste mischen
  shuffle($fragen1);
  // Und die Variable für eine erneute Anzeige der Seite speichern
  registerVariable($fragen1);
}
// Die Frage anzeigen, die nach dem Mischen an erste Stelle steht
question($fragen1[0]);

Haben die Codes etwas damit zu tun, dass der Text am Ende von Seite 12 angezeigt wird und was kann ich da tun?

in SoSci Survey (dt.) by s095093 (115 points)
edited by SoSci Survey

1 Answer

+1 vote

Komischerweise wird der Text aber am Ende der vorherigen Seite, also auf Seite 12 angezeigt und nicht auf der eigenen Seite.

Das liegt wahrscheinlich daran, dass goToPage() direkt zur angegeben Seite springt. Wenn Sie das nicht möchten, verwenden Sie bitte setNextPage().

Ein kleiner Tipp noch:

question('GR01') or question ('GR02');

Das hier ist nicht korrekt und funktioniert vermutlich nur zufällig. Wenn Sie beide Fragen anzeigen möchten, dann schreiben Sie es bitte wie folgt:

question('GR01');
question('GR02');
by SoSci Survey (200k points)
...