Hallo liebes Support-Team,
für unsere Berfragung wollen wir verbundenen Quoten (Alter, Geschlecht) einbauen.
Wenn diese voll sind bzw. nicht den Kriterien entsprechen, sollen diese an den Panelanbieter zurückgeleitet werden.
Das Screening ist direkt zu Beginn der Befragung, Seite 1 Begrüßung, Seite 2 Geschlecht, Seite 3 das Alter (offen), auf Seite 4 kommt dann der php-Code und sollte eigentlich das Screening stattfinden.
Meine Variablen:
Die Zahl habe ich bei SC02_01 auf 1-100 festgelegt, falls das von Relevanz sein sollte.
Mein Problem ist jetzt, dass der Screenout einfach nicht funktioniert.
Also Personen werden z.B. im Alter von 17 Jahren trotzdem weiter gelassen.
Debug-Modus, weiblich = 1 und Alter = 17:
Interessanterweise ist mir aber eben aufgefallen, dass er es richtig erkannt hat bei weiblich =1 und einem Alter von 61, dann kommt das hier (Natürlich ein Testlink).
Bei männlich=2 und einem Alter von 61 funktioiert es z.B. aber wieder nicht...
Mein Code sieht wie folgt aus:
$age = value('SC02_01');
//
if ($age < 18) {
$ageGrp = 1;
} elseif ($age <= 29) {
$ageGrp = 2;
} elseif ($age <= 39) {
$ageGrp = 3;
} elseif ($age <= 49) {
$ageGrp = 4;
} elseif ($age <= 60) {
$ageGrp = 5;
} else {
$ageGrp = 6;
}
//
put('ID02_01', $ageGrp);
//
$ageGrp = value('ID02_01');
$gender = value('SC01');
//
if (($ageGrp < 1) or ($ageGrp > 6)) {
redirect('http://www.anbieter.com/p1234567/screenout.php?id=%panelID%');
}
//
$demID = $ageGrp.'-'.$gender;
//
$limits = array(
'1-1' => 0,
'1-2' => 0,
'2-1' => 59,
'2-2' => 63,
'3-1' => 52,
'3-2' => 54,
'4-1' => 60,
'4-2' => 61,
'5-1' => 75,
'5-2' => 75,
'6-1' => 0,
'6-2' => 0
);
//
$n = statistic('crosscount', array('ID02_01', 'SC01'), array($ageGrp, $gender));
//
if ($n > $limits[$demID]) {
redirect('http://www.anbieter.com/p1234567/quotafull.php?id=%panelID%');
}
Die richtigen Redirect-Links vom Anbieter habe ich noch nicht, liegt es daran? Wobei es bei meinen anderen Filtern auch klappt.
Auch im Debug-Modus klappt es nicht.
Es würde mich sehr freuen, wenn Sie da einmal drüber schauen könnten.
Vielen Dank und viele Grüße
Melanie Bender
Ergänzung// 07.01.2018
Der Screenout funktioniert jetzt.
Die Reihenfolge für des Fb's sieht jetzt wie folgt aus; Variablennamen haben sich nicht verändert:
Seite 1 - Begrüßung
Seite 2 - Alter
Seite 3 - Geschlecht (php-Cope Screenout <2 und >5 Altersgruppen) - klappt
Seite 4 - php Code verbundene Quoten, wie folgt:
$ageGrp = value('ID02_01');
$gender = value('SC01');
//
$demID = $ageGrp.'-'.$gender;
//
$limits = array(
'1-1' => 0,
'1-2' => 0,
'2-1' => 0,
'2-2' => 0,
'3-1' => 52,
'3-2' => 54,
'4-1' => 60,
'4-2' => 61,
'5-1' => 75,
'5-2' => 75,
'6-1' => 0,
'6-2' => 0
);
//
$n = statistic('crosscount', array('ID02_01', 'SC01'), array($ageGrp, $gender));
//
if ($n > $limits[$demID]) {
redirect('http://www.anbieter.com/p1234567/quotafull.php?id=%panelID%');
}
Die Quoten wollte ich gerne testen, und habe dann z.B. Alterskategorie 2, weiblich ('2-1') auf 0 gesetzt im Code - folglich sollte doch direkt der Quotafull-Link kommen, oder?
Nur irgendwie lässt er mich trotzdem weiter.... zählt der Code erst abgeschlossene Fragebögen?
Das Problem tritt übrigens bei allen Altersgruppen auf.
Die Daten hatte ich in meinem Datensatz komplett gelöscht, sodass ich quasi bei "0" gestartet bin.
Hier die Debug-Information; Alter 23 und w: