我有一个网站,其中双重帐户是一个大问题。我们进行IP地址检查,但这并不总是有效。我只想在客户端计算机上设置一个cookie,其中包含他们登录的帐户的唯一用户ID。然后每次登录时阅读cookie,看看他们是否登录到同一个帐户或其他帐户。我知道他们可以清除他们的cookie,但这有助于吸引更多用户。这可能吗?如果是这样,怎么样?
我们使用Php和MySql数据库。目前我们在登录时记录用户的IP地址。我们有一些cron作业运行并检查匹配的Ips,然后为具有相同IP地址的用户存储所有用户ID。这就是我们如何标记双重账户。
我们想添加一个在登录时尝试读取cookie的函数。获取用户标识(唯一的int)并将其与正在登录的用户进行比较。如果用户ID与登录帐户的用户ID不匹配,则我们知道该用户具有双重帐户。
答案 0 :(得分: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);
}