PHP 投票 - 跟踪用户

PHP Voting - Track User

我正在使用 PHP 和 Javascript 实施投票系统。一切正常,但我无法多次阻止人们。现在,我正在使用 cookie 检查用户是否已经投票:

if(isset($_COOKIE['lastdate'])) {
    $val = $_COOKIE['lastdate'];
    if ($val == $today)
    {
        $voted = 1;
    }
}

它有效,但它容易受到隐身或切换 browsers/clearing cookies 的人的攻击。

为什么我不使用 IP 地址?因为我们在工作中使用这个站点并且所有计算机都连接到路由器,所以所有 IP 都是相同的。

问题是,在没有常规 IP 且不使用任何类型的 authentication/login 的情况下,如何防止多票投票、识别客户端?

不幸的是,如果不使用某种形式的身份验证,用户将始终能够绕过您阻止他们的尝试。

Incognito window 删除所有 cookie 并创建一个新会话 - 这意味着您现在无法识别该用户。添加 cookie 和会话检查将减少作弊,但确实没有其他方法可以解决这个问题。

我建议从社交网络一键登录,这对用户来说通常是一个很好的组合——他们不必注册,但他们仍然会登录。这意味着他们只能使用多个社交媒体帐户作弊,这需要更多的工作。