【问题标题】:Only occasional missing data in timed Ajax, PHP, Mysql request仅在定时 Ajax、PHP、Mysql 请求中偶尔丢失数据
【发布时间】:2014-12-08 14:58:42
【问题描述】:

"work.php" 删除 mysql 数据库中的所有行并每 5 秒插入一次新数据,这工作正常。 “result.php”显示来自同一个 mysql 表的数据,这工作正常。 “resultajax.php”使用 result.php 中的 db 内容每 3 秒刷新一次 div,这工作正常,数据会正确刷新和更新。

var auto_refresh = setInterval(
 function ()
{
$('#cat').load('result.php #dog');
}, 3000);

但是,大约每刷新“resultajax.php”的 7 到 10 次,#dog div 就会被加载,但没有来自 db 的数据。几乎感觉 div 是在数据库行被删除和重新填充之前的精确时刻被拉出的,所以很明显 db 在那短暂的一秒内是空的。然后 3 秒后,当 div 再次刷新时,一切正常并继续。那个偶尔的空白页面让我很烦,看起来很乱。

有没有简单的方法来解决这个问题?

【问题讨论】:

  • 查看数据库中是否有数据?

标签: php jquery mysql ajax


【解决方案1】:

检查 result.php 是否返回空白结果。这将需要稍微修改您现有的功能:

var auto_refresh = setInterval(
    function ()
    {
        $.ajax({
            url:'result.php',
            done:function(data){
                var dogData = $(data).find("#dog").html();
                if(dogData != ''){
                    $("#cat").html(dogData);
                }
            }
        });
    }, 3000);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-06
    • 1970-01-01
    • 2015-07-11
    相关资源
    最近更新 更多