如何实施"报告/标记评论"

时间:2017-02-25 17:19:29

标签: php mysql symfony silex

我使用Silex(不确定是否相关)来构建博客,我希望为用户添加报告评论的可能性。

最初我只是在我的flagged表中添加了一个布尔comments列,默认情况下将其设置为false,并在用户点击时将其切换为true "报告评论"按钮。我的计划是能够轻松向管理员显示所有标记的评论。但我意识到任何用户都可以去报告每条评论,淹没管理小组。

所以我想以不同的方式尝试。我想计算一个特定评论被标记的次数,所以我可以在#34;标记的评论"管理小组的一部分,管理员可以快速查看哪些评论被一个孤独的巨魔标记,哪些被大量标记并值得关注。
我还想记住特定用户自己标记的评论,因此我可以禁用"报告评论"按钮对他说他已经标记了。

这里有两个问题:

  • 这是一个很好的方法吗?
  • 如何在我的数据库中实现它?单个评论被标记的次数应该很容易存储,但是单个用户标记的所有评论的不断增长的列表呢?

谢谢!

1 个答案:

答案 0 :(得分:1)

执行此操作的一个好方法是创建一个新表,以保持最低用户ID和纪念。为用户标记评论时要跟踪的任何其他信息添加其他列。

此方法的好处是,它允许您在sql中使用连接来提取用户及其所有标记的注释,或注释以及标记它的所有用户。它还允许您通过直接查询该表来快速计数。

您的userid和commentid列上的索引会随着表格的增长而保持活力。