0 votes
ago in SoSci Survey (dt.) by s297728 (140 points)
edited ago by s297728

Liebes Team,

ich habe aktuell eine Befragung im Feld, bei der es leider Probleme mit der Speicherung bzw. dem Redirect von Speedern zu geben scheint. Zum Teil werden Fälle in meinem Datensatz als Speeder identifiziert, aber als Complete an den Anbieter zurückgeleitet.

Ich verwende auf der letzten Seite den folgenden Code:

if ((caseTime('begin') < 240)) {
redirect('Speeder-Link vom Dienstleister', false);
 }

'Speeder-Link vom Dienstleister' ist hier natürlich nur ein Platzhalter.

Auf der letzten Seite definiere ich erst meine Quoten:

    $quotaEducation = [
  1 => 1352,  // 1352 Personen in Bildungsgruppe niedrig ((noch) kein Abschluss – ohne Abitur, 51 Prozent)
  2 => 1298  // 1298 Personen in Bildungsgruppe hoch (Abitur + mehr, 49 Prozent)
   ];
 $quotaGender = [
  1 => 1272,  // 1272 Frauen (Code 1)
  2 => 1378  // 1378 Männer (Code 2)
 ];
 $quotaAge = [
  1 => 822,  // 822 Personen in Altersgruppe 1 (16-20 Jahre, 31,34 Prozent)
  2 => 1828,  // 1828 Personen in Altersgruppe 2 (21-29 Jahre, 68,66 Prozent)
 ];


// Die Bildung wird umkodiert
 $education = value('RM07');
 if ($education <= 3) {
  $educationGroup = 1;
 } elseif ($education >= 4) {
  $educationGroup = 2;
 }

 // Geschlecht wird direkt ausgelesen
 $gender = value('RM05');

 // Das Alter wird umkodiert
 $age = value('RM06_01');
 if ($age <= 20) {
  $ageGroup = 1;
 } elseif ($age <= 29) {
  $ageGroup = 2;
 }

put('IV04_01', $educationGroup);
put('IV05_01', $gender);
put('IV06_01', $ageGroup);

Und in einem separaten PHP-Code auf der gleichen Seite ist der complete-Link eingebaut:

redirect ('Complete-Link');

Liegt das Problem in meinem Code? Oder was könnten andere mögliche Fehlerquellen sein?

Ich freue mich über Unterstützung und bedanke mich im Voraus.

1 Answer

0 votes
ago by SoSci Survey (343k points)

Der Fehler steckt in dieser Zeile:

if ((caseTime('begin') < 240))

Es müsste heißen

if ((caseTime('hitherto') < 240))

Das stand bis vor kurzem noch falsch in der Anleitung. Nach einer ziemlich langen Fehlersuche haben wir dasselbe Problem letzte Woche in einem Projekt endlich eingrenzen können.

Erklärung: caseTime('hitherto') liefert die Verweildauer, wohingegen caseTime('begin') die Zeitraum seit Start der Erhebung liefert. Und wenn jemand den Fragebogen startet, dann auf Seite 3 auf dem Mobilgerät zu Instagram wechselt und nach 5 Minuten zurück kommt und der Browser die Seite dann neu lädt, dann wird das bei caseTime('begin') mitgezählt.

ago by s297728 (140 points)
Ganz, ganz herzlichen Dank für die schnelle Antwort!

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

...