2013-02-17 40 views
9

Tôi có chức năng jquery gọi một tệp PHP qua AJAX. Bên trong tệp PHP đó, tôi cóPHP AJAX 12017 Lỗi khi gọi Tiêu đề (Vị trí :)

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

Tuy nhiên điều này không có tác dụng, trang không được chuyển hướng và cuộc gọi jQuery AJAX trả về lỗi, không có 12017, tôi không thể tìm thấy nhiều thông tin về số lỗi này.

Tôi đã bật bộ đệm đầu ra và đã thử đặt quyền gọi đầu tiên ở đầu tệp PHP nhưng vẫn không có may mắn. Bất kỳ ý tưởng? Cảm ơn.

+0

Tại sao cậu lại trở về một chuyển hướng bằng AJAX? Bạn đang cố làm gì vậy? – Alexander

+0

Nếu bạn xem trang trong trình duyệt. (không có AJAX) Chuyển hướng có hoạt động không? – hek2mgl

+0

@Alexander: Hàm ajax đăng một biểu mẫu tới một hàm PHP xử lý biểu mẫu, nếu biểu mẫu được xử lý thành công thì trang nên chuyển hướng, nếu không thành công, lỗi được trả về ajax thông qua gọi lại thành công ajax và tôi xử lý lỗi ở đó. –

Trả lời

7

Tôi tin rằng nếu bạn đang sử dụng yêu cầu ajax, bạn phải xử lý chuyển hướng trong javascript (nơi yêu cầu được thực hiện).

Nếu tập lệnh php của bạn đặt tiêu đề Vị trí của phản hồi khi bạn thực hiện yêu cầu ajax, nó sẽ cố chuyển hướng yêu cầu ajax không phải trang được hiển thị trong trình duyệt.

Bạn có thể thử xử lý lỗi mà bạn đưa ra yêu cầu (tôi sẽ cụ thể hơn nếu tôi thấy mã tạo yêu cầu).

Bạn có thể thử thay đổi kịch bản của bạn để nó trả về một số loại mã trạng thái và sau đó xử lý tình trạng này với js/jquery và làm cho chuyển hướng đó:

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

Tôi đã làm cho nó hoạt động bằng cách trả về URL mong muốn thông qua JSON và xử lý nó bằng jQuery. Cảm ơn. –

Các vấn đề liên quan