从MySQL新添加的行我有一个表posts
的列post_id
,user_id
,post
。开始使用PHP
当用户访问他的页面时,我检索他的帖子列表(select post from posts where user_id=$uid
)。然后,他可以通过表单将一个或多个帖子添加到表格中。
有没有什么办法可以在不查询整个表的情况下检索这些新增加的帖子?
我特别感兴趣的是在jQuery中使用它来定期自动刷新他的帖子(例如,当YouTube评论选择“自动刷新”时)。
感谢,阿尔伯特
从MySQL新添加的行我有一个表posts
的列post_id
,user_id
,post
。开始使用PHP
当用户访问他的页面时,我检索他的帖子列表(select post from posts where user_id=$uid
)。然后,他可以通过表单将一个或多个帖子添加到表格中。
有没有什么办法可以在不查询整个表的情况下检索这些新增加的帖子?
我特别感兴趣的是在jQuery中使用它来定期自动刷新他的帖子(例如,当YouTube评论选择“自动刷新”时)。
感谢,阿尔伯特
如果我是你,我会跟踪当的职位进行了改造,例如
post_id, user_id, post, made
您可以使用AJAX来ping一个脚本来检查自上次平〜
查询的帖子你DB这样的:
"select * post from posts where user_id=$uid order by post_id desc limit 0,20"
这将让最近的20个职位。
假设'post_id'字段是一个自动增量int,您可以在第一次加载页面时跟踪最大值ID。对于后续的jQuery Ajax请求,只是做一个
SELECT * FROM posts WHERE user_id = '{$user_id}' AND post_id > '{$last_id}' ORDER BY post_id ASC
如果用户提交要更新,为什么不尽快后成功提交更新页面在同一页上的帖子(通过AJAX)?您避免重新获取您已知的信息,并避免重新查询数据库。
您会在提交页面时动态添加帖子。
function onPostSubmitted(post){
// AJAX submit of the post
$("#posts").prepend($("<div />").text(postData));
}
权,这在我看来是最合理的事情 - 感谢萨姆 – alste 2011-04-02 22:15:00