2010-07-23 126 views
0

我使用iframe在Facebook中創建應用程序。在那我想從一個頁面重定向到另一個。我使用以下代碼:頁面重定向問題

<fb:redirect url='http://....' /> 

但這不起作用,而不是重定向它停留在同一頁上。 所以我用下面的代碼:

header("Location: http://......."); 

,這是正常工作,但問題是,它並沒有在它的地址欄第一頁的主窗口,即地址,並在廣場的那頁打開整個窗口打開打開重定向到的第二頁。我們可以在PHP的標題函數中給出target =「_ top」屬性請幫助我....

回答

0

您需要添加die();

header("Location: http://......."); 
die(); 

當您更改任何標題時,您當前的頁面不會停止呈現。它只會設置標題 - 只要沒有任何東西已經渲染! 請確保在設置此頭重定向之前,您沒有任何html輸出!

此代碼僅在IFrame重新加載時執行/您單擊鏈接或執行表單提交到同一頁面。

+0

我想你說的是什麼,但它仍然不工作,並給予相同像以前一樣顯示。 – user392406 2010-07-23 10:58:17

1

你不能給header()函數一個目標(它在服務器上運行 - 它不知道它被一個框架調用)。

您可以將以下JavaScript添加到第二頁以「突破框架」。

<script type="text/javascript"> 
    <!-- 
     if (top.location!= self.location) { 
      top.location = self.location.href 
     } 
    //--> 
</script> 

如果你不想依賴於JavaScript,你需要在第二頁的鏈接本身,而是與target="_top"