【发布时间】:2017-08-25 04:50:18
【问题描述】:
我正在试验 PHP,我注意到如果您使用 SESSIONS,它们会在您关闭浏览器窗口时过期。
我在这里搜索,他们说你可以使用session.cookie_lifetime,但不建议长时间使用它。我的问题是。例如,像这样的网站、reddit 或 facebook。他们有一个“记住我”按钮,因此当您关闭浏览器时会话不会关闭。他们是如何做到这一点的?
提前致谢!
【问题讨论】:
我正在试验 PHP,我注意到如果您使用 SESSIONS,它们会在您关闭浏览器窗口时过期。
我在这里搜索,他们说你可以使用session.cookie_lifetime,但不建议长时间使用它。我的问题是。例如,像这样的网站、reddit 或 facebook。他们有一个“记住我”按钮,因此当您关闭浏览器时会话不会关闭。他们是如何做到这一点的?
提前致谢!
【问题讨论】:
会话的目的是在您关闭浏览器时关闭。如果您不希望这种行为,您应该使用 cookie 而不是会话。查看 PHP 中的 setcookie() 函数。这将允许您创建一个可以持续很长时间(甚至数年)的 cookie,并且非常适合长期持久数据,例如“还记得我吗?”函数。
【讨论】:
$_SESSION['userId'] 变量中。但是,如果我使用 cookie 进行操作,那么黑客可以更改 id 并以任何其他用户身份登录。当然,我在这里遗漏了一些东西,但我不知道它是什么。