[英]How to print a page using javascript for every php while loop?
[英]PHP print string in while loop
我在文件do.php
有一个函数,如下所示:
<?php
if(isset($POST['submit']))
{
for($i=0;$i=10;$i++)
{
$reponse = array(
'content' = > "This is an example - process #" . $i;
);
echo json_encode($response);
sleep(1); // sleep one second each loop
}
}
?>
我有一些简短的JQUERY代码使用ajax发布数据...
<button onclick="post()">Submit</button>
function post()
{
$.ajax({
type: "POST",
url: "do.php",
data: data,
success: function (data){
var json = jQuery.parseJSON(data);
$('#result').html(json.content);
}
});
}
这是输出...
This is an example - process #1
This is an example - process #2
This is an example - process #3
....
当我单击Submit按钮时,我可以看到一个关于Firebug运行10秒的请求以完成并显示结果。 现在,我希望每个结果在while循环中逐行显示。 我可以构建一个websocket系统,但是这个系统占用了我很多时间,对于大型系统来说,如果可能的话,我只需要一种简单的方法即可。
我仍然尝试将输出保存到txt文件中,并使用JQUERY每500毫秒读取一次,但是这种方式占用了过多的请求,因此效果不佳。
您想达到什么目的? 据我了解,您尝试在SERVER端执行多个进程,并且希望从CLIENT端查询其状态(哪个进程仍在运行/完成...)
如果是这样,则IMO您可以执行这些进程(使用fork()或其他方法),并让父进程向您的AJAX请求返回每个进程的唯一令牌标识符的列表。
现在,每500毫秒使用setInterval() ,查询您收到的令牌的。
希望对您有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.