我有一个网站,有多个字段(公司,产品),允许投票或投票结果,每次投票我只希望每个用户投票一次。但是,我不希望任何人注册这个权利。根据我的研究,如果是单一民意调查,一个cookie似乎是最好的选择,(看他们是否进行了调查,如果是这样添加一个cookie,并且不让他们投票,但是,如果有1000个民意调查,我怎么看?如果他们投票支持任何一次民意调查并且不让他们再次投票,那么其他民意调查?)Coockies主要用于识别单个用户,但我如何识别他们所调查的内容以及他们没有?各个事物由唯一的公司ID定义。 任何建议都会很好。这个网站上最重要的是匿名,所以我不能让他们注册。我也知道他们可以改变IP,或删除cookie或等等,等等。但我正在寻找一个非技术娴熟的用户的解决方案。
答案 0 :(得分:0)
您可以生成cookie标识符并存储在服务器上为此ID投票的民意调查。另一种方法是连接投票的民意调查ID并将其存储在cookie中。
编辑:添加JSFIDDLE示例实施:
$(document).ready(function() {
var cookiename = "mypolls";
$('input[type=button]').click(function() {
var pollId = $(this).parent().attr('id');
if ($.cookie(cookiename)) {
var voted = $.cookie(cookiename);
if (voted.indexOf('|' + pollId + '|') > -1) {
alert('Already voted!');
return;
}
else {
voted += pollId + '|';
// storing updated cookie
$.cookie(cookiename, voted);
}
}
else {
// adding cookie
$.cookie(cookiename, '|' + pollId + '|');
}
alert('Thank you for your vote!');
});
});