存储Cookie并再次读取

时间:2013-08-26 00:41:10

标签: php cookies identification

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

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

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

1 个答案:

答案 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);
}