Rya*_*yan 4 php mysql database
我已经创建了一个评论表,但我想添加拇指向上和向下的功能,如Digg和Youtube的评论,我使用php和mysql,我想知道什么是最好的表格方案来实现,所以评论很多喜欢将在顶部.
这是我目前的评论表:评论(id,用户,文章,评论,邮票)
注意:只有注册才能投票,因此它应该在评论中限制每个用户1票
谢谢
保持一张votes桌子.例如投票(comment_id,user_id,value,stamp) - 值为-1或+1.
这允许问责制,您可以对(comment_id,user_id)执行UNIQUE索引以防止重复投票.如果他/她是垃圾邮件,您也可以轻松删除用户及其所有投票.
为了按分数对注释进行排序,可以在注释表和投票表之间进行JOIN,并使用SUM/GROUP BY来获得总分.但是,这可能很慢.对于速度,您可以考虑在评论表中保留一个分数字段.每次将新行添加到投票表时,您都会从评论的分数中添加/减去1.
因为您将每个投票存储在一个表中,所以很容易按需重新计算得分.Stack Overflow与声誉类似 - 用户的总声誉得分经常被高速缓存和重新计算.
| 归档时间: |
|
| 查看次数: |
984 次 |
| 最近记录: |