【问题标题】:Session destroy on browser close浏览器关闭时会话销毁
【发布时间】:2013-12-03 16:16:09
【问题描述】:

我多次听说会话在我们的浏览器关闭时被破坏。

然后我如何在关闭并重新打开浏览器后保持登录。

请帮忙

【问题讨论】:

标签: php session


【解决方案1】:

您保持登录状态,因为即使关闭浏览器,您的会话也不会被破坏。在浏览器关闭时销毁会话是默认行为,但这并不意味着它是唯一的行为。您可以延长会话的到期时间。

This behaviour can be changed in the php.ini file by altering the line:

使会话无限期地保持活动状态

 session.cookie_lifetime = 0

因此,只需检查您何时设置了会话的到期时间。虽然使用 cookie 将是一个不错的选择

注意:- 请记住在进行此更改后重新启动您的网络服务器。

【讨论】:

    【解决方案2】:

    您必须使用 Cookie。

    您可以使用setcookie() 函数并通过$_COOKIE['cookiename'] 变量读取值。

    【讨论】:

      【解决方案3】:

      使用 cookie,有预定义的过期时间,我喜欢 1 年

      【讨论】:

        【解决方案4】:

        您可以使用 cookie。 Cookie 是直接存储在 HDD 上的数据,因此即使浏览器关闭,如果尚未过期,仍然可以读取 Cookie。

        这是一个设置 cookie 的示例。

        将此代码粘贴到标记之前。

        <?php setcookie("$name", "$value", $time); ?>
        

        其中 $name 是 cookie 名称,$value 是 cookie 值,$time 是 cookie 过期的时间。例如$time = time()+86400; 会将您的 cookie 设置为 1 天后过期。 86400 的值是一天中的秒数,60 秒乘以 60 分钟乘以 24 小时,所以 60x60x24 = 86400。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-12-13
          • 2014-08-15
          • 1970-01-01
          • 1970-01-01
          • 2012-07-29
          • 1970-01-01
          • 1970-01-01
          • 2019-05-13
          相关资源
          最近更新 更多