Hallo, vielen Dank für die schnelle Rückmeldung. Ich habe nun bereits ein paar Fehler beseitigt und auch den Filter ergänzt. Wenn ich es richtig verstehe, müsste es dann so ablaufen:
Unter der Erfragung von Alter & Geschlecht füge ich den Code ein:
$quota = [
'1-1' => 100, '1-2' => 93, // 100 Männer, 93 Frauen für die Altersgruppe 1
'2-1' => 151, '2-2' => 141, // 151 Männer, 141 Frauen für die Altersgruppe 2
'3-1' => 144, '3-2' => 140, // 144 Männer, 140 Frauen für die Altersgruppe 3
'4-1' => 159, '4-2' => 157, // 159 Männer, 157 Frauen für die Altersgruppe 4
'5-1' => 170, '5-2' => 173, // 170 Männer, 173 Frauen für die Altersgruppe 5
'6-1' => 105, '6-2' => 117, // 105 Männer, 117 Frauen für die Altersgruppe 6
'1-3' => 0, '2-3' => 0, '3-3' => 0, '4-3' => 0, '5-3' => 0, '6-3' => 0, // 0 Personen mit Geschlecht divers für alle Altersgruppen
];
// Geschlecht wird direkt ausgelesen
$gender = value('RE02');
// Das Alter wird umkodiert
$age = value('RE01');
if ($age <= 25) {
$ageGroup = 1;
} elseif ($age <= 35) {
$ageGroup = 2;
} elseif ($age <= 45) {
$ageGroup = 3;
} elseif ($age <= 55) {
$ageGroup = 4;
} elseif ($age <=65) {
$ageGroup = 5;
} elseif ($age <= 100) {
$ageGroup = 6;
}
// Definition einer Variable mit Altersgruppe und Geschlecht
// Aus 3 und 2 wird hier '3-2'
$demGroup = $ageGroup.'-'.$gender;
// Speichern der Gruppenzugehörigkeit in der internen Variable SD04_01
put('SD04_01', $demGroup);
// Abruf der vorliegenden Fälle für diese Merkmalsausprägung
$cases = statistic('count', 'SD04_01', $demGroup);
// Auslesen der Quote für die demografische Gruppe
$maxPerGroupGender = $quota[$demGroup];
// Quotenstopp
if ($cases >= $maxPerGroupGender) {
redirect('
https://www.respondi.com'); }
Und auf der vorletzten Seite der Befragung folgt dann noch der erste Teil bis put ()
$quota = [
'1-1' => 100, '1-2' => 93, // 100 Männer, 93 Frauen für die Altersgruppe 1
'2-1' => 151, '2-2' => 141, // 151 Männer, 141 Frauen für die Altersgruppe 2
'3-1' => 144, '3-2' => 140, // 144 Männer, 140 Frauen für die Altersgruppe 3
'4-1' => 159, '4-2' => 157, // 159 Männer, 157 Frauen für die Altersgruppe 4
'5-1' => 170, '5-2' => 173, // 170 Männer, 173 Frauen für die Altersgruppe 5
'6-1' => 105, '6-2' => 117, // 105 Männer, 117 Frauen für die Altersgruppe 6
'1-3' => 0, '2-3' => 0, '3-3' => 0, '4-3' => 0, '5-3' => 0, '6-3' => 0, // 0 Personen mit Geschlecht divers für alle Altersgruppen
];
// Geschlecht wird direkt ausgelesen
$gender = value('RE02');
// Das Alter wird umkodiert
$age = value('RE01');
if ($age <= 25) {
$ageGroup = 1;
} elseif ($age <= 35) {
$ageGroup = 2;
} elseif ($age <= 45) {
$ageGroup = 3;
} elseif ($age <= 55) {
$ageGroup = 4;
} elseif ($age <=65) {
$ageGroup = 5;
} elseif ($age <= 100) {
$ageGroup = 6;
}
// Definition einer Variable mit Altersgruppe und Geschlecht
// Aus 3 und 2 wird hier '3-2'
$demGroup = $ageGroup.'-'.$gender;
// Speichern der Gruppenzugehörigkeit in der internen Variable SD04_01
put('SD04_01', $demGroup);
Ich habe das soeben einmal im Debug Modus durchgeklickt, es kommt keine Fehlermeldung aber ich land direkt wenn ich auf der Seite mit der Abfrage von Alter & Geschlecht bin auf die weitergeleitete Seite. Stimmt hier noch etwas mit dem Filterbefehl nicht?
Ich freue mich auf die Rückmeldung.