【问题标题】:starting a new session automatically when a user changes the session variable i.e. changes there email address当用户更改会话变量时自动启动新会话,即更改电子邮件地址
【发布时间】:2012-07-20 02:09:16
【问题描述】:

我网站上的会话变量是用户的电子邮件地址,用户可以选择更改电子邮件地址,目前,当他们更改电子邮件地址时,会话变量显然会自动销毁,因此他们必须登录再次使用新地址,我想要一种自动将会话变量更改为新电子邮件地址的方法。这可能吗?谢谢。

【问题讨论】:

    标签: php


    【解决方案1】:

    您实际上只是将其重新定义为新值。

    $_SESSION['email'] = $newEmailAddressVariable;
    

    【讨论】:

      【解决方案2】:

      除非您使用session_destroy() 明确销毁会话,否则不应在用户更改其电子邮件地址时销毁会话。无论哪种方式,您都可以获取更改前 $_SESSION 中当前的内容,并将其分配给电子邮件地址更改后的现有会话或新会话。

      【讨论】:

        【解决方案3】:

        您是否使用电子邮件地址来引用当前登录的用户?

        我建议您使用永不更改的 ID,例如数据库中的自动增量 ID。这是一种更健壮的方式...

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-09-09
          • 1970-01-01
          • 2016-05-11
          • 2017-06-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多