【问题标题】:Saving sessions on log out在注销时保存会话
【发布时间】:2017-12-10 12:48:42
【问题描述】:

我是 PHP 初学者,正在尝试创建一个简单的电子商务网站。我有一个登录/注册表单,用户可以添加项目或选择只会影响他/她帐户的选项。注销时,我使用 session_destroy() 因此一切都恢复为默认值。我还尝试使用数组,以便可以在会话数组中保存和添加项目:

 $_SESSION['user_info'] = array();
 array_push($_SESSION['user_info'],        $item1);

我不知道如何注销用户并保留他们的信息,在 logout.php 文件中我正在像这样取消会话:

 session_start();
 unset($_SESSION['user_info']);
 session_destroy();

但是再次登录时,什么都没有保存。我很乐意提供任何帮助。

【问题讨论】:

  • 那不是目的,会议是为了。您需要将“篮子”保存在其他地方,例如数据库中。
  • beginner in PHP...registration form 您是否使用像 Sodium 这样的社区标准库来加密用户数据?您是否对所有请求强制执行 HTTPS?密码在存储之前是一种散列方式吗?电子商务平台既复杂又快速。建议尝试一些较小的东西作为开始项目。至于购物车项目,我会说将其保存到数据库表中。 useruser_itemsitems 类型关系。
  • 如果您需要保留购物车信息,您不能销毁会话。如果会话被破坏,所有信息都会丢失。仅取消设置 user_info 会话索引。
  • 你需要一个数据库我的朋友

标签: php session login session-storage


【解决方案1】:

没有保存任何内容,因为session_destroy() 删除了会话数据。会话仅用于在客户处于活动状态或登录时存储数据。使用file_put_contents 保存数据,使用file_get_contents 检索数据,或创建数据库,例如MySQL

file_get_contents

MySQL

Save Session To Database

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多