我想知道在不要求用户登录的情况下提供投票系统(或称收视率)所涉及的技术障碍是什么.我知道机器人存在问题,投票一堆 - 但如果保留用户的IP地址怎么办?代理成为问题吗?
我想建立一个仍然可靠的公共投票系统..现在可能吗?
编辑 正确性的风险中等,即人工验证和每用户一票.一个完整的登录将询问太多用户的角色(选民)
此外,如果这是"不可能"完成的,你怎么能在事后发现投票欺诈?维基百科的模型可以在这里工作吗?
谢谢,马特穆勒
我试图找出一种计算排名的方法.现在它只需要获得每个单独输入的赢/输比率,因此例如一个赢得了100次中的99次,它有99%的获胜等级.但是如果一个条目在总共1个选票中赢得1个,它将获得100%的胜利排名,但绝对不能高于赢得99次的那个.什么是更好的方法来做到这一点?
每个人都喜欢在他们的网站上显示Digg/Tweet/Like徽章,而Disqus评论系统也开始接管.
替代文字http://mediacdn.disqus.com/1045/images/embed/disqus-logo.png 替代文字http://about.digg.com/files/dbmedium.png

从开发人员的角度来看,这些系统的好处是:
我想知道,你知道那里完成以下任何服务(列表中的每个数字都是假设的不同服务):
我的意思是,这些东西是不是已经发明了??? 或者他们已经尝试过但失败了吗?如果评论问题已经解决,那么标记和投票的解决方法似乎并没有以同样的方式解决.
是否有人正在研究这个问题,或者有没有像这样的东西?或者你有一个解决方法,使当前的系统像这样工作?
期待您的想法.
注意:我非常熟悉所有的库(我是一个红宝石家伙,所以所有的行为 - 如宝石等)自己实现这些东西.我问这个问题,试图找到一个功能齐全的系统,它与上面列出的服务一样易于使用和扩展,只需要一个javascript文件.我没有运气就为他们搜索了互联网,但是每天都有新的服务出现.
在我网站上用户生成的帖子下,我有一个类似亚马逊的评级系统:
Was this review helpful to you: Yes | No
Run Code Online (Sandbox Code Playgroud)
如果有投票,我会在上面显示结果,如下所示:
5 of 8 people found this reply helpful.
Run Code Online (Sandbox Code Playgroud)
我想根据这些排名对帖子进行排序.如果您从最有帮助到最不实用的排名,您将如何订购以下帖子?
a) 1/1 = 100% helpful
b) 2/2 = 100% helpful
c) 999/1000 = 99.9% helpful
b) 3/4 = 75% helpful
e) 299/400 = 74.8% helpful
Run Code Online (Sandbox Code Playgroud)
显然,它不能仅对有用的百分比进行排序,不知何故应该考虑总票数.是否有一种标准的方法可以做到这一点?
更新:
使用Charles的公式来计算Agresti-Coull的较低范围并对其进行排序,以上示例将如何排序:
1) 999/1000 (99.9%) = 95% likely to fall in 'helpfulness' range of 99.2% to 100%
2) 299/400 (74.8%) = 95% likely to fall in 'helpfulness' range of 69.6% to 79.3%
3) 3/4 …Run Code Online (Sandbox Code Playgroud) 我们正在考虑实施投票系统(向上,向下投票),而不使用任何类型的凭证 - 没有应用账户,也没有OpenID或任何类型的.
关注点:
我的问题:
如果您有任何问题可以帮助您形成对这些问题的答案,请在评论中提问!
我在网站上实现了一个简单的上/下投票系统,我跟踪个人投票以及投票时间和唯一用户iD(散列IP).
我的问题不是如何计算投票的百分比或总和 - 更重要的是,根据投票确定好分数的好算法是什么?
我发现按纯投票百分比排序是不可接受的,以及简单地计算upvotes.
考虑这个例子:
理想的系统将A放在第一位,然后是B,然后是C.
在纯百分比方案中,订单为C> A> B.(错误)在纯投票计数方案中,订单为B> A> C.(错误)
我有一个基于系统对分数的信心的"混合"算法的想法,可能是这样的:
// (if totalvotes > 0, else score = 0)
score = 1 - ((downvotes+1 / totalvotes+1) * sqrt(1 / totalvotes))
Run Code Online (Sandbox Code Playgroud)
但是,在我从现在开始调整算法到日落之前,我希望向社群询问是否有任何我已经知道的非常明确的算法,我根本就不知道.
我也有每个投票的日期数据 - 但是,网站的内容不是非常时间敏感,所以我真的不在乎"什么是热点".
我正在构建一个小型应用程序,它高度依赖于匿名用户对某些项目的投票.这是如此之小,以至于要求注册将是乏味的,并且无法证明其合理性.
无论如何,我对此做了一些研究,包括在stackoverflow上搜索(https://stackoverflow.com/search?q=anonymous+votes),似乎没有一个令人满意的答案.
我的问题是:我是否可以采取任何安全措施来防止游戏匿名投票?
我想到的一件事是CAPTCHA,但我想避免这种情况,因为用户会在很短的时间内对多个项目进行投票,而CAPTCHA只会惹恼他们.
我想到的另一件事是限制单个IP(除了cookie)每分钟的投票数,但不确定这是如何工作的.
有什么想法吗?
我正在尝试用我的帖子开发PHP投票系统,访问者可以上下投票,然后我应该能够按最高/最低评级对帖子进行排序.
任何人都可以推荐一个我可以使用的好脚本吗?
我是数据库和Web开发的新手,但是我正在尽自己最大的努力通过创建自己的动态网站来学习自己的方式。我正在逐步研究它,目前正在纸上设计数据模型。我想知道如何为网站构建一个数据库,该数据库可以像stackoverflow这样进行投票?如果存在一个包含问题列表的表,则用户创建的每个问题都会添加到该表中。这个表上不能简单地有一个计数选票的字段,因为那将允许一个人拥有无限的选票,对吗?因此,应该有一个连接到另一个表的密钥,该表计数票数并跟踪用户,以便他们不能两次投票,对吗?如果这是真的,这就是我感到困惑的部分。给出的每个答案也可以投票。
请注意,我并不是在问stackoverflow是如何做到的,而是关于用户体验的概念是如何工作的。
我还想做的一件事是查询单个用户的活动,因此,如果必须为提交的每个数据动态创建所有这些表,随着时间的流逝创建大量的表,不是吗?解析每个表以检查特定用户是否提交了任何数据或投票是否真的很慢?
是否有更好的方法可以使人们以外行的方式进行解释?不需要特定的代码...我可能可以在以后的时候弄清楚。我现在只是在理论化并建立一个纸模型以供日后使用。
编辑:哦,我明白了。我在考虑数据库表时会想到类似excel的电子表格,因此,如果我的理解是错误的,请纠正我。因此,整个站点范围内的每个表决都在一个表中(在电子表格中垂直列出),每个表都有(水平)一行数据,这些数据将表决链接到各种所有者(用户和问题或答案)?那是对的吗?我说问题还是答案,因为我不明白这样一种情况:将它们都作为投票属性(不确定这是否是正确的术语)会有意义,而不是为答案和问题创建两个单独的投票数据被投票。基本上按我的方式看,每行代表一个投票,共有3个字段:1。值(+1或-1),2。来自谁(用户名),3。什么(问题或答案)。