如何整理并获取用户的新通知?
通知表
我这里有一个代码可以获取所有用户的通知
//PHP PART
"SELECT *
FROM notifications
WHERE tagged_by = "12042905" and action = \"unread\"";
//JAVASCRIPT PART
function n() {
$.ajax({
url: "notifications.php",
dataType: "json",
success: function(responseJSON) {
$("div").html(reponseJSON[0].notify_id)
}
})
}
setInterval("n()", 1000)
但它每秒都会给我所有通知。现在我的问题是我只想在通知表中获取新添加的行,我该怎么做?我怎样才能一次输出一个?我应该在jQuery中使用.append()或.insert()吗?
注意:date_notify语法为y-m-d h:i:s或“2012-05-06 17:11:18”
答案 0 :(得分:0)
您可以简单地为MySQL查询添加限制。
"SELECT *
FROM notifications
WHERE tagged_by = "12042905" and action = \"unread\"
LIMIT 1";
答案 1 :(得分:0)
您的问题是,在发送通知后,您没有将“操作”的值从“未读”更新为“已读”。
因此解决方案很简单:在每次拉取(选择查询)之后,您应该更新刚刚选择的所有行。
对于列'action',您应该使用0和1值而不是未读和读取来优化数据库。
答案 2 :(得分:0)
Your problem is, you have a timer that keep on calling your function n() every 1sec at a time
so the output will repeat until timer keep on running. , so to avoid that problem?
1. The "Div" handler that will hold your ouput will empty first!
ex.
$("div").empty();
2. try to use append()
ex. $("div").append(reponseJSON[0].notify_id);
Hope this will help! tnx