自上次更新以来从数据库中检索新条目

时间:2016-07-18 10:53:22

标签: javascript php jquery mysql ajax

我创建了一个网页,用于每隔5秒对我的数据库进行一次ping更改,但是目前我的方法有问题,有时新条目会加倍,有时它们根本没有出现,我最好怎样绕过这个。

我有这个Jquery片段用于检查数据库的php脚本的AJAX请求。我使用javascript来获取时间并使用函数来改变时区。

   $(document).ready(function() {
       var last = new Date().addHours(10).toMysqlFormat();
        function new(){
           var url = 'new.php?l=' + last;
            $('#new').append($('<div>').load(url));
            last = new Date().addHours(10).toMysqlFormat();
            //console.log("Updated:" + last + ".");
        }
        setInterval(function(){new()}, 5000);


    });

我上次检查更新时发送给该脚本。

这个PHP脚本如下:

if (isset($_GET["l"])){
    $dmin = $_GET["l"];
    $dmax = date('Y-m-d H:i:s');

       $sql = "SELECT `ID`,`Name`  FROM `foo` WHERE (`datetime` BETWEEN   '".$dmin ."' AND  '".$dmax ."') ";

在我查询sql语句之后,我遍历结果并将其返回到javascripts,在我的过程中,这些错误可能来自哪个或者有更好的方法吗?

我认为其中一个问题是我的PHP时间与测试的javascript时间相差1或2秒,我将日期改为5秒,我得到了所有内容的副本。我需要一种使用更新的方法,以便页面可以加载数月而不会失去跟踪

1 个答案:

答案 0 :(得分:0)

$sql = "SELECT `ID`,`Name`  FROM `foo` ORDER BY `id` DESC

使用这些查询获取最新条目