0

我有一个网站,其中双重帐户是一个大问题。我们进行 IP 地址检查,但这并不总是有效。我只是想在客户端计算机上使用他们登录的帐户的唯一用户 ID 设置一个 cookie。然后在他们每次登录时读取 cookie,看看他们登录的是同一个帐户还是另一个帐户。我知道他们可以清除他们的 cookie,但这将有助于吸引更多用户。这可能吗?如果是这样,怎么做?

我们使用 PHP 和一个 MySql 数据库。目前,我们在用户登录时记录用户的 IP 地址。我们有一些 cron 作业运行并检查匹配的 Ips,然后存储具有相同 Ip 地址的用户的所有用户 ID。这就是我们标记双重帐户的方式。

我们想添加一个函数,如果设置了,它会在登录时尝试读取 cookie。获取用户 ID(唯一 int)并将其与正在登录的用户进行比较。如果用户 id 与正在登录的帐户的用户 id 不匹配,我们就知道该用户有一个双重帐户。

4

1 回答 1

0

这可能吗?如果是这样,怎么做?

对的,这是可能的。您可以将 cookie 过期日期延长至一个月并保留之前的用户 ID。

如果用户 id 与正在登录的帐户的用户 id 不匹配,我们就知道该用户有一个双重帐户。

我相信你这种抓重复账户的方法不是一个好方法。如果有两个帐户共享同一台计算机怎么办(这种情况并不少见)。您的方法也将其视为重复帐户。


实施示例

登录部分

if (isset($_COOKIE['prev_id'])) {
   if ($_COOKIE['prev_id'] != $current_id) {
       // possible duplicated account
   }
} else {
   // expire in one month
   setcookie('prev_id', $current_id, time() + 2592000);
}
于 2013-08-26T00:53:02.480 回答