$_POST["username"] 入力に基づいて、特定の Web サイトに $page 変数を設定するためのハードコーディングされた if/else ステートメントがあります (後でヘッダーで使用する場合: ".page")。
コード:
if ($_POST["username"] == "username1@domain1.com") {
$page = "http://www.google.com";
}
else if ($_POST["username"] == "username2@domain1.com"){
$page = "http://www.yahoo.com";
}
else if ($_POST["username"] == "username1@domain2.com"){
$page = "http://www.stackoverflow.com";
}
else if ($_POST["username"] == "username2@domain2.com"){
$page = "http://www.serverfault.com";
}
else if ($_POST["username"] == "username@domain3.com"){
$page = "http://www.superuser.com";
}
else if (!preg_match($domain2.com, $_POST["username"])) { //THIS IS VERY WRONG
$page = "http://www.backblaze.com";
}
else{
$page = "DefaultBackupPage.php";
}
ユーザー名の末尾に「@domain.com」が含まれている場合、$page をこの場合は backblaze.com に設定しますが、何でもかまいません。
私はそれが面倒であることを認識していますが、実際にはこの実装は好きではありません。このスキーマに収まる必要があり、迅速な修正が必要です!
現在受け取っているエラーは、正規表現が空であるというものです。PHP を知っている人にとって、これが簡単なことであることを願っています。