簡體   English   中英

PHP重定向不更改頁面

[英]PHP redirect not changing the page

我的頁面分為三個不同部分。 第一個是按鈕,第二個是JS函數(AJAX請求),最后一個是由AJAX請求調用的PHP腳本。

PHP腳本應該調用Web服務來處理數據。 這是PHP腳本的內容:

 <?php if(isset($_POST['forminfos'])){ $client = new SoapClient('URL'); $client->Function(); header('Location: localhost/page.php'); } ?> 

該頁面未重定向,但是當我檢查控制台時,我可以看到存在帶有localhost / page.php內容的GET。

在此處輸入圖片說明

 //on button sumbit var data=$('#forminfos').serializeArray(); $.ajax({ url: '../func.php', data:data, type: 'POST', dataType: 'json', success: function () { }, error: function(){ } }); 

我希望帶有AJAX請求的頁面被重定向到“ localhost / page.php”,但事實並非如此。

問題是您正在進行重定向的文件被AJAX調用。 這意味着盡管您正在重定向該請求頁面,但是您從其發出ajax請求的實際頁面不會被重定向。 ajax請求的結尾導致您調用的腳本被重定向, 而不是被請求的頁面。

如果您的唯一目標是在標頭(localhost / page.php)中到達目的地,則可以等待AJAX​​請求完成並執行以下操作:

window.location.href = "localhost/page.php"

成功使用AJAX請求完成后,它將使用javascript來重定向頁面。


進一步閱讀:

關於window的基本JS文檔

窗口位置和窗口替換之間的區別

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM