PHP如何实现 不打开一个网页就运行它?

比如我打开了a.php,然后我用html的< form> submit了一个请求,会post到b.php上。
然后b.php开始运行这个请求 。

但是我希望用户点了submit之后,就直接刷新页面出现提示说“请求已经发送”,然后在不打开b.php的情况下,让 b.php运行。

求高手帮忙!!!谢谢了!!!!

第1个回答  推荐于2016-08-24
用ajax就好了。
如:
<html>
<head>
<script type="text/javascript">
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("POST","b.php",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("名=值&名=值&名=值&......");//这里是请求的内容,可以用 document.getElementById("文本框的ID属性值").value获取各个值
}
</script>
</head>
<body>
<h2>AJAX</h2>
<button type="button" onclick="loadXMLDoc()">让B运行这个请求</button>
<div id="myDiv"></div>

</body>
</html>本回答被提问者采纳
第2个回答  2013-03-08
楼下几位过于复杂了, 注意b.php 中没有显性的执行结果就行了.
然后在b.php最后加几句JS脚本就行了,

echo "<javascript>alert('请求已经发送!');location.replace('a.php');</script>"';
就直接返回到a.php页面去了
第3个回答  推荐于2018-07-04
a.php加入javascript ajax异步提交

<script>
function ajaxpost() {
$.post('b.php',function(data) {
alert(data);

});

}

</script>
<input type="button" onclick="ajaxpost()"/>

b.php:
<?php echo 123123;exit;?>本回答被网友采纳
第4个回答  2018-07-03
ajax了解一下
相似回答