【发布时间】:2009-06-29 08:52:58
【问题描述】:
我看到了几个关于如何保护和防止滥用排名系统(如盯着电影、产品等)的问题,但在实际实施方面却一无所获。为了简化这个问题,我不关心安全性,访问该系统的人都是值得信赖的,如果发生这种情况,滥用排名系统是微不足道的,而且比原因更容易恢复。无论如何,我很好奇如何存储选票。
一个想法是有一个投票表,记录每次投票,然后立即、在预定时间或在产品的每次加载时(这似乎效率低下,但也许不是)投票被统计并在两者之间加倍0 和 5 被更新到产品表中的产品条目中。
或者,我在 products 表中存储总分和投票数,当我显示时将其除以,当有人投票时将投票添加到总和递增数。
或者有没有更好的方法来做到这一点,我还没有想到?我有点想在产品表中有一个“评级”字段,但想不出没有一些额外数据来更新投票的方法。
同样,数据完整性很重要,但绝不是必要的,有什么想法吗?
【问题讨论】:
标签: mysql database-design voting-system