...
php获取数据更新进度的问题
本帖最后由 aier520 于 2013-12-06 00:59:45 编辑 update.php 页大概如下:
//此页面执行时间比较长,可能要几分钟
$sql = "select * from news";
//执行sql 得到数组 $news_arr 具体代码省略
$news_count=count($news_arr )-1;统计数组数量,以便计算更新的进度
//开始循环数组且更新数据
foreach($news_arr as $key => $value){
//从别数据库获得数据 且更新到本地数据,代码省略
$_SERVER['wait']=floor($key/$news_count*100); 把更新进度保存进session
}
getdata.php 页是输出session中保存的更新进度,代码如下
echo $_SERVER['wait'];
html页内容大致如下:
当点击这个按钮时触发一个js(jquery写的)
$(".bgn,.bgy").click(function() {
url="http://localhost/update.php"; //数据更新的操作页
$.get(url);//用ajax的方法去执行更新程序
function getwait() {
$.get(
"http://localhost/getdata.php", //获得数据更新的进度
function(redata) {
//问题出在这里 在上面的 $.get(url) 去执行更新,
//如果php的更新脚本没有执行完成(就是update.php 这个页的程序没有执行完成),
//这里不会有任何数据返回,请问朋友们,这个问题我要怎么解决呢?
alert(redata);
//这里做更新进度条的处理
},
"text")
}
setInterval(getwait, 1000);
})
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论