[英]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來重定向頁面。
進一步閱讀:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.