我正在使用zend framework 1.12。最近我发现了一个在放置sleep(540);
时会导致新请求尝试的错误。
它将在当前执行完成之前从起点再次请求。
这个问题的解决方案是什么?
这个问题也出现在简单的PHP脚本中。
注意:在我的windows localhost(wamp)中正常工作但在linux上使用zend服务器发现问题
示例:
<?php
error_reporting(1);
$con = mysql_connect('server_name','username','password');
mysql_select_db('test11',$con);
if(isset($_POST['a'])) {
$sql = "insert into test(name,data) values ('".$_POST['a']."','".$_POST['b']."') ";
mysql_query($sql);
sleep(600);
echo "sdfsfsf";
}
?>
<html>
<body>
<form method="post" name="frm" id ="frm">
<input type="text" name="a" id="a">
<input type="text" name="b" id="b">
<input type="submit" name="btnsubmit" id="btnsubmit" value="Submit">
</form>
</body>
</html>
已更新
实际上我们有php脚本在从具有较大数据的db中获取行之后进行一些计算,这需要超过10分钟来完成整个过程 ,但在4-5分钟后,同样的重复发布请求尝试使用相同的数据。因此,为了找到这个问题,我们制作了示例php脚本,并在db操作后放置了sleep并发现了同样的问题。