我开发一个小的web应用程序需要它使用PHP为我的大学活动的在线投票系统。我正在获取IP地址并将其存储在数据库中,以防止来自同一用户的重复投票。但后来我记得我的大学使用代理服务器,所以获得IP地址是没用的。 我试图访问和存储客户端使用JavaScript的Mac地址..我尝试了一些例子,我在互联网上找到..但他们都没有工作。 你们可以向我推荐一种替代方法吗?如何获得我想要的结果?
任何形式的帮助将受到热烈的赞赏。
问候, Aayush什雷斯塔 尼泊尔
我开发一个小的web应用程序需要它使用PHP为我的大学活动的在线投票系统。我正在获取IP地址并将其存储在数据库中,以防止来自同一用户的重复投票。但后来我记得我的大学使用代理服务器,所以获得IP地址是没用的。 我试图访问和存储客户端使用JavaScript的Mac地址..我尝试了一些例子,我在互联网上找到..但他们都没有工作。 你们可以向我推荐一种替代方法吗?如何获得我想要的结果?
任何形式的帮助将受到热烈的赞赏。
问候, Aayush什雷斯塔 尼泊尔
让他们进入他们的电子邮件地址,并发给他们的电子邮件中的链接,可以让他们去投票。链接应该包括他们电子邮件的一些散列,你将不得不检查他们是否已经投票。
我意识到学生可以输入多个电子邮件地址并进行多次投票,但是学生真正拥有多少封电子邮件?那么他们会花多少时间做这样的事情?
我猜你没有通过大学访问任何类型的认证系统,所以这可能是最好的办法。
编辑:
另一个想法是使用Facebook的身份验证(见:http://developers.facebook.com/docs/authentication/)。缺点是你必须假设所有的选民都有Facebook帐户。
唯一的100%密闭的方式做这将是让用户创建需要一些独特的个人信息,以防止用户拨打多个帐户的帐户。
最接近没有登录系统的是Evercookie库,它在用户浏览器中的十几个不同位置存储UUID。要全部清除它们是非常困难的(即使在浏览器中使用隐私模式),所以如果您在投票时向用户提供Evercookie,您可能会发现之前投票的人。
注意,这将停止机器的水平,而不是用户级别重复投票(一台机器可能haave多个用户,并且用户可以拥有多台机器,这可能使重复投票或阻止合格选民)。
首先让用户注册一个电子邮件地址,以便他们可以使用随后与该地址关联的投票系统。
一旦你有一个电子邮件地址(即验证与发送到电子邮件中的激活链接),那么你可以从用户收集投票相关的输入。
实在是防止重复投票的,除非你强制用户证书没有有效的,独立于平台的方式,等
我同意。看看科林的链接,你应该找到你正在寻找的答案。 –