0

我没有使用浏览器 cookie,因为我知道它们可以被操纵,我使用的是会话 cookie,但对我来说,问题是用户登录并在他/她重新启动计算机或浏览器时自动注销。

防止这种情况的最佳方法是什么或有类似“让我登录 [√]”之类的东西?我见过大多数具有此功能的网站。

提前非常感谢!

4

3 回答 3

2

“我没有使用浏览器 cookie”和“我正在使用会话 cookie”

所以你正在使用cookies。试着打电话

session_set_cookie_params(time()+3600*24*365*5);

session_start()

于 2012-07-29T21:52:50.367 回答
0

为避免混淆,会话 ID 存储在 cookie 中。您可以简单地延长会话 cookie 的生命周期。其他解决方案......棘手。

于 2012-07-29T21:50:20.343 回答
0

您必须为 cookie 设置过期时间。通常,当用户关闭浏览器时,会话 cookie 会被删除。有过期时间的cookies只有在cookie过期时才会被删除,用户清除浏览器缓存/卸载浏览器/等。

例如,在 PHP 中,您可以使用该setcookie('somename', 'somevalue', timeoutvalue)方法获取更永久的 cookie,并使用 检索它们$_COOKIE['somename'],而不是$_SESSION['somename'] = 'somevalue'. 如果您想要更高的安全性,您也可以将登录状态保存到数据库中,并在用户每次访问您的网站时将其与 cookie 进行比较。这样你就可以防止有人篡改 cookie 来伪造他们的身份。

于 2012-07-29T21:58:34.957 回答