Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检查JSON数据是否已更改并警告行_Javascript_Jquery_Json - Fatal编程技术网

Javascript 检查JSON数据是否已更改并警告行

Javascript 检查JSON数据是否已更改并警告行,javascript,jquery,json,Javascript,Jquery,Json,我正在尝试开发一个应用程序,每分钟检查一次MYSQL表中的新消息,如果有任何消息,它应该提醒用户并显示消息。这是我使用的代码,我应该如何修改它使其工作 setInterval ( "getMessages()", 60000 ); var oldmessage = ""; function getMessages() { $.getJSON(serviceURL + 'messages.php?ID=' + ID, function(message) { if(JSON.s

我正在尝试开发一个应用程序,每分钟检查一次MYSQL表中的新消息,如果有任何消息,它应该提醒用户并显示消息。这是我使用的代码,我应该如何修改它使其工作

setInterval ( "getMessages()", 60000 );
var oldmessage = "";
function getMessages() {
    $.getJSON(serviceURL + 'messages.php?ID=' + ID, function(message) {
       if(JSON.stringify(message) != JSON.stringify(oldmessage)){ // old message is not same as new 
          var messages = data.key[0];
           alert(messages.NEW);
        });



            oldmessage = message;

}  

所以我要做的是将旧消息保存到变量中,并在几分钟后进行比较,如果它发生了更改,我会通知行NEW

可能的解决方案是,在mysql中使用一个新列来标记是否已查看。默认情况下,将不查看(例如0)。在PHP代码中,应该检索标记为“未查看”或0的一行。同样,您应该通过AJAX显示,并使用1(已查看)更新该行

如果没有收到任何行,则不向AJAX发送任何内容,并相应地处理消息,不会找到新行


这只是一个逻辑,希望能有所帮助。

嗯,if语句的close标记在哪里?