获取PHP变量的PHP AJAX脚本
我不熟悉使用ajax,但已经使用PHP一段时间了。我很好奇如何将两者结合起来 我的网站上有一个PHP脚本,它需要一段时间才能发出声音,因为它正在执行多次迭代和许多功能 我想以某种方式开发一个ajax脚本,告诉脚本的位置。整个脚本中有一个变量类似于进度表。不知何故,我希望每次变量改变时文本都会改变 如果可能的话,怎么可能 非常感谢您的帮助。做您想做的事: 将数据发布到PHP脚本,然后获取其结果:获取PHP变量的PHP AJAX脚本,php,ajax,Php,Ajax,我不熟悉使用ajax,但已经使用PHP一段时间了。我很好奇如何将两者结合起来 我的网站上有一个PHP脚本,它需要一段时间才能发出声音,因为它正在执行多次迭代和许多功能 我想以某种方式开发一个ajax脚本,告诉脚本的位置。整个脚本中有一个变量类似于进度表。不知何故,我希望每次变量改变时文本都会改变 如果可能的话,怎么可能 非常感谢您的帮助。做您想做的事: 将数据发布到PHP脚本,然后获取其结果: jQuery UI甚至有一个,将两者结合起来是明智的决定。您可以将当前进度表状态保存在文件、ram缓存
jQuery UI甚至有一个,将两者结合起来是明智的决定。您可以将当前进度表状态保存在文件、ram缓存或数据库中,然后编写另一个脚本来返回此状态。然后实现检索此信息的AJAX,然后启动新的AJAX请求,依此类推,直到进度完成。 我建议使用AJAX实现类似“长寿命HTTP连接”的功能。在ajax请求中传递状态,如果进度在PHP中没有改变,只需休眠,直到它改变为止 像这样(以%表示): 由于ajax请求有一个超时,所以只要在请求超时后启动一个新的请求就可以了
我希望这就是你的意思 可能在需要一段时间才能加载的服务器端脚本中,创建一个“报告变量”,该变量在一系列测量的连接点处递增。创建一个独立的服务器端AJAX回调方法来查看报告变量并只回显该数字。当客户端接收到它时,它会更新DOM和viola的这一部分,没有混乱,没有麻烦。我打算建议这样做。我不想麻烦保存到数据库,只要使用memcache(如果可以的话)(您甚至可以将它存储在$\u SESSION变量中)。但是如果你使用两个脚本,处理起来会容易得多。会话也存储在文件中,memcache是一个内存/ram缓存。存储数据的方法很多,所以我只写了“文件、ram、数据库”。)是的,我同意,只是提出了一些想法
$.ajax({
url: "progress.php",
success: function(response){
$("#results").html(response);
}
});
AJAX request: progress.php?state=0
AJAX response: state: 10
AJAX request: progress.php?state=10
-- on server side it is still 10%, so sleep the php progress until it changes and then reply
AJAX response: state: 11
....