好吧,所以我打算建立一个具有upvote/downvote功能的网站.在没有深入了解网站其他部分的细节的情况下,用户将能够提交可以投票的内容(在这种意义上类似于reddit - 仅在此意义上).本网站上唯一的"帐户"将是管理员和版主,这让我想到了一个主要问题:
如何在没有帐户的情况下尽可能地将每个帖子的每个用户的投票限制为一个?
该网站也将使用Django和MySQL制作,这让我想到了第二个问题:
如何在MySQL数据库中存储投票?我应该在每个帖子的字段中存储一个整数,还是应该是每行一票的表?我的猜测绝对是前者,但我以前从未使用过类似的东西,所以我只是想确定一下.
有人能指出我如何实现我想要的功能的大方向吗?我一直在考虑它,我想到了使用会话变量,cookie和/或IP地址的方法.我知道如果没有账户,没有任何解决方案是完美的,但我只想要一些能够阻止人们发送垃圾邮件的东西.我很无能,所以所有的帮助都表示赞赏.
好容易.
大多数其他站点使用账户进行upvote/downvote-ing使用账户的原因是因为几乎没有其他方法可以保证用户无法在同一件事情上投票两次.
您可以"缩小"此用户之前投票范围的信息是:
您可以清楚地看到,所有这些信息都可能发生变化,大部分信息都可以由恶意用户随意控制.如果您想保护自己免受恶意用户的侵害,最好的方法是用户帐户.
如果您只想保护自己免受合法用户投票两次,只需使用IP地址 - 它们足够持久,以至于普通用户无法在短时间内投票两次.
对不起,我不能得到更多的帮助,据我所知,这仍然是那些未解决的问题之一.由于数百种不同的原因,很多人希望能够保证访问者与他们以前的访问者相同或不同,但是使用当前的技术是不可能的.
| 归档时间: |
|
| 查看次数: |
5962 次 |
| 最近记录: |