0 votes
in SoSci Survey (dt.) by s098214 (140 points)

Guten Tag,
ich führe eine mehrwellige Erhebung mit SoSci Survey durch. Dabei greife ich auf die Unterbrecherseitenfunktion zurück.

Bei Testdurchläufen kommt nun jedes Mal vor, dass mir die Verabschiedungsseite und die Begrüßungsseite für den zweiten Messzeitpunkt auf einer Seite angezeigt werden.

Ich verwende folgenden Code (den ich aus dem Benutzerhandbuch von SoSci kopiert habe), s.u.
Im Moment sind die Zeiteinstellungen für die Probedurchläufe auf 10 sec gestellt. Sobald die Studie online geht, sollen im Abstand von 24h und 14 Tagen die Einladungs-E-Mails verschickt werden. Bei den Testdurchläufen habe ich stets diesen Fehler, dass mir die Abschiedsseite und Begrüßungsseite auf einer Fragebogenseite angezeigt werden. Ich habe mit demselben Code bereits ein mehrwelliges Studiendesign mit E-Mail-Einladungen (Serienmail) konzipiert und verstehe leider mit meinen bisherigen Recherchen und Versuchen nicht, weshalb mir zwei verschiedene Fragebogenseiten auf einer angezeigt werden.

    // Die Zeit des ersten Aufrufs der Unterbrecherseite wird in Variable $timepart1 gespeichert
// isset() und registerVariable() verhindern, dass diese Zeit beim erneuten Aufruf der Seite (z.B. Neuladen der Seite) geändert wird und/oder dass E-Mails doppelt geplant werden
if (!isset($timepart1)) {
  // Zeit speichern
$timepart1 = time();
registerVariable($timepart1);
 
  // Einladung mit der Serienmail ID 2 zum zweiten Messzeitpunkt nach 1 Tagen senden
  // Der Zeitabstand wird jeweils in Sekunden angegeben: 7 x 24 x 3600 Sekunden = 7 Tage
 mailResume(false, 3, 1 * 1 * 10);
} 
 
// Prüfen, wie viel Zeit seit dem ersten Aufruf der Seite vergangen ist
 if ((time() - $timepart1) < 1 * 1 * 10) {
  // Unterbrecherseite anzeigen falls es weniger als 1 Tage sind,
  // damit Teilnehmer nicht schon früher die Fragen des zweiten Messzeitpunkts sehen können.
  option('resume', true); // Kein Hinweis, dass das Interview fortgesetzt wird
  option('nextbutton', false); // Weiter-Knopf ausblenden (Interview unterbrechen)
 // text('ende1');  // Evtl. eine Verabschiedung zum ersten Fragebogen-Teil anzeigen
} else {
  // Ist der Teilnehmer nach 7 Tagen zurückgekehrt und somit die aktuelle Zeit minus die neue Zeit-Variable
  // größer als 7 Tage ist, dann wird die Befragung auf der nächsten Seite fortgesetzt
goToPage('B2');
}

Ich bedanke mich im Voraus um Hilfe.
Freundliche Grüße

1 Answer

0 votes
by SoSci Survey (327k points)

Könnte es womöglich sein, dass Sie oberhalt des PHP-Codes noch den Inhalt der Unterbrecherseite eingebunden haben?

Dieser müsste unterhalb stehen, sodass er durch das goToPage() übersprungen wird, wenn man für den zweiten Teil die Seite wieder aufruft.

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

...