2013-02-17 38 views
9

我有一個jQuery的功能,通過AJAX調用一個PHP文件。內部的PHP文件我有PHP AJAX 12017錯誤時調用標題(位置:)

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

然而,這並不工作,頁面不重定向和jQuery的AJAX調用返回一個錯誤,沒有12017,我無法找到關於此錯誤的數量多的信息。

我有輸出緩衝啓用,並試圖將標題調用放在我的PHP文件的頂部,但仍然沒有運氣。有任何想法嗎?謝謝。

+0

你爲什麼要返回由AJAX重定向?你想做什麼? – Alexander 2013-02-17 00:20:17

+0

如果您在瀏覽器中查看該頁面。 (沒有AJAX)重定向是否工作? – hek2mgl 2013-02-17 00:21:11

+0

@Alexander:ajax函數將表單傳遞給處理表單的PHP函數,如果表單被處理後頁面應該重定向,如果處理不成功,則通過ajax成功回調將錯誤返回給ajax,並處理錯誤在那裏。 – 2013-02-17 00:38:27

回答

7

我相信,如果您使用ajax請求,您必須處理JavaScript內的重定向(發出請求的地方)。

如果您的php腳本在發出ajax請求時設置了響應的位置標題,它將嘗試重定向ajax請求,而不是瀏覽器中顯示的頁面。

您可以嘗試處理髮出請求的錯誤(如果我看到發出請求的代碼,我會更具體)。

你可以試着改變你的腳本,以便它返回某種狀態碼,然後處理與JS/jQuery的這種狀態並在那裏進行重定向:

document.location=' *new url to redirect the browser to* ' 
+0

我通過JSON返回所需的URL並使用jQuery處理它。謝謝。 – 2013-02-17 17:05:00