我正在使用一个登录系统来设置下面的会话变量/ cookie.Chrome非常棒,让您可以毫不费力地查看您的Cookie,显然将其标记为"当我关闭我的浏览器时"到期的PHPSESSID.果然,当我登录时,关闭浏览器,然后打开一个新的浏览器会话,我不再登录了.
我怎样才能让用户保持登录状态,无论浏览器是否关闭?我想这样做,以便用户保持登录状态(如果可能的话,永久保存),除非故意注销.
提前致谢,
约翰
$_SESSION['loginid'] = $row['loginid'];
$_SESSION['username'] = $u;
Run Code Online (Sandbox Code Playgroud)
看看session_set_cookie_params()......
第一个参数是$lifetime.将其设置为非0数字,这是他们将在几秒钟内保持登录的时间.如果为0,则在浏览器关闭后将被删除.请注意,您需要自己存储会话数据,或者也可以设置ini_set("session.gc_maxlifetime", $Lifetime);(以防止服务器删除旧会话).但请注意,这可能占用大量磁盘空间(并打开拒绝服务攻击,攻击者通过不断产生新会话来占用所有磁盘空间)...
1年〜= 3156000(秒)
我老实说建议实现一个"记住我"的功能,而不是试图无限期地坚持会议......记住我也会使用cookie,但它不会为非活跃用户占用服务器空间......