Code: Alles auswählen
<?php
// Startseite definieren
define ('START', 'http://www.abakus-internet-marketing.de/');
// GET in Variable speichern
$redirect_id = $_GET['id'];
// Länge ermitteln
$length = strlen($redirect_id);
if (is_int($redirect_id) && ($length == 4)) {
switch($redirect_id) {
case 1001:
$site = 'http://www.google.de/';
break;
case 1002:
$site = 'http://www.microsoft.com/';
break;
case 1003:
$site = 'http://www.yahoo.com/';
break;
// Im Falle einer ungültigen ID wird START als Ziel definiert
default:
$site = START;
break;
}
} else {
$site = START;
}
header('Status: 301 Moved Permanently');
header('Location:'.$site);
exit;
?>
Leider greift die Switch-Anweisung nicht. Wenn ich die Seite mit index.php?id=1003 (yahoo.de) aufrufe, werde ich trotzdem auf die Default-seite umgeleitet. Ich vermute irgendwie ein Problem mit dem Integer-Variable.
Kann wer helfen? Gibt es vielelicht noch etwas bzgl. Sicherheit zu beachten? PHP ist noch etwas "gewöhnungsbedürftig" für mich...
