繁体   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