嘿傢伙我想在我的頭文件中構建一個重定向腳本。 它包含一個名爲$ redirect的變量,它或者等於0或1.如果當前的URL等於rediectURL什麼都不做
我想要做的是如果變量等於1將用戶重定向到指定頁面。 這是有效的。 我遇到的問題是當它到達重定向的URL時,它會創建一個循環。 我試着寫下面的代碼,但它不起作用。我做錯了什麼?
<?php
$redirect = 1;
$host = $_SERVER['HTTP_HOST'];
$self = $_SERVER['PHP_SELF'];
$query = !empty($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : null;
$url = !empty($query) ? "http://$host$self?$query" : "http://$host$self";
$redirectURL = '/protest/cispa.php';
if ($redirect === 1) {
if ($url === $redirectURL) {
die();
}
else {
header("Location: $redirectURL");
exit;
}}
?>
正如andrewsi建議我更新了我的代碼以下爲它的工作原理:
<?php
$redirect = 0;
$host = $_SERVER['HTTP_HOST'];
$self = $_SERVER['PHP_SELF'];
$query = !empty($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : null;
$url = $self;
$redirectURL = '/protest/cispa.php';
if ($redirect === 1) {
if ($url === $redirectURL) {
}
else {
header("Location: $redirectURL");
exit;
}
}
?>
你'$重定向= 1'在頂部,那麼你檢查'$重定向=== 1'但絕不要改變它的選項。那是你的意思嗎?你也有'if($ url === $ redirectURL)',但是你把'$ url'設置爲'$ redirectURL'永遠不會設置的東西。這意味着兩個死代碼塊。 – Tigger 2013-04-26 23:30:32
我通過編輯代碼手動更改它。 – VampireNews 2013-04-26 23:48:56