我有一个网站,它有多个字段(公司、产品),允许投票赞成或反对,每次投票我只希望每个用户对字段投票。但是,我不希望任何人注册此权利。从我的研究来看,如果它是一次民意调查,cookie 似乎是最好的选择,(看看他们是否投票,如果是的话,添加一个 cookie,不要让他们投票,但是,如果有 1000 个民意调查,我会怎么看如果他们对任何一项民意调查进行了投票,并且不允许他们再次对该民意调查进行投票,但其他民意调查?) Coockies 将主要用于识别单个用户,但我如何识别他们已投票和未投票的内容? 各个事物由唯一的公司 ID 定义。任何建议都会很好。这个网站上最重要的是匿名,所以我不能要求他们注册。我也知道他们可以更改 IP,或删除 cookie 或等等等等。但我正在为非精通技术的用户寻找解决方案。
问问题
323 次
1 回答
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!');
});
});
于 2012-10-13T07:18:29.007 回答