2013-12-18 35 views
0

我正在開發一個在線商店,當用戶的身份是正確的,我將用戶重定向到其他頁面(例如,谷歌):重定向使用元標籤

if(UsersManager::getInstance()->checkIdentification($_POST['userAdmin'], $_POST['passAdmin'])){ 
    $_SESSION['user'] = $_POST['userAdmin']; 
    $_SESSION['lastConection'] = time(); 
    header('Location: http://www.google.es'); 
    die(); 
} 

我這個代碼上傳到我的服務器它的工作原理。我在其他服務器上嘗試過,但重定向不起作用。

另外,我曾嘗試使用此代碼

echo '<meta http-equiv="Refresh" content="0; URL=http://www.google.com">'; 

和刪除

header('Location: http://www.google.es'); 
die(); 

無論是使用元標籤,也沒有頭重定向()的作品。在我的服務器工作正常。有任何想法嗎?

謝謝。

+0

這是你的實際代碼?爲什麼你的購物東西會重定向到Google?此外,meta標籤只不過是一種解決方法,仍然取決於您輸出的位置。顯示最終的HTML。爲什麼'Refresh'而不是'Location'? – mario

+0

不,這不是我真正的代碼,是一個例子(真的,我的代碼重定向到「adminMenu.php」)。我也嘗試使用「位置」,但不起作用。我無法重定向到其他網址。謝謝你的答案。 – user3117213

回答

3

請嘗試顯示錯誤,可能出現輸出緩衝警告。
在頂部

ini_set('display_errors', true); 
error_reporting(E_ALL | E_STRICT); 

P.S補充一點:使用重定向元標記像你想,是不是一個很好的實踐。

+0

請給答案部分真正的答案! – Lithilion

+0

嘿,當我已經回答了這個話題,我沒有評論的名聲... – CentaurWarchief

+0

我知道使用meta標記進行重定向並不是一個好的做法,但我嘗試了它,因爲另一種重定向方式,不工作。在日誌文件中沒有出現任何內容。 – user3117213

0

看看爲什麼header();不工作。但一個快速解決可能是

if(UsersManager::getInstance()->checkIdentification($_POST['userAdmin'],   $_POST['passAdmin'])){ 
     $_SESSION['user'] = $_POST['userAdmin']; 
     $_SESSION['lastConection'] = time(); 
     header('Location: http://www.google.es'); 
     ?> 
     <script type="text/javascript"> 
     <!-- 
     window.location = "http://www.google.es/" 
     //--> 
     </script> 
     <?php 
     echo "<a href=\"http://www.google.es\">If your browser didn't redirect you click here.</a>"; 
     die(); 
    } 

JavaScript應該重定向每個頭,()不工作。

如果他們已禁用JavaScript,則會爲他們提供該鏈接。雖然它是一個漂亮的鏈接;]

+0

我們已經實現了,並沒有工作。可能是服務器配置? – user3117213

+0

JavaScript是瀏覽器不是服務器端。所以,它應該始終工作。你確定你的腳本工作正常嗎?也許你的班級工作不正常。嘗試使用全新的腳本並進行測試。標題('Location:http://www.google.es');另一個只有javascript。如果那些工作可能是你的班級。 – Nazca