php - php编程时, session 值在页面之间不持久的原因可能是什么?

标签 php session

我现在使用 php session 来存储值并在页面之间传递它。

我进行基本检查,例如确保在每个页面上调用 session_start() 并检查浏览器中是否设置了 sessionid cookie,但该值在页面之间并不持久。

例如,我在一页上设置了$_SESSION["abc"]='abc',但是当我在另一页上打印时,它是空的。

我发现使用file存储cookie值时,并没有在指定路径创建对应的cookie文件。未创建 session 文件的原因可能是什么?

最佳答案

这对你有用吗?

<?php

session_start();

if (!isset($_SESSION['foo']))
    $_SESSION['foo'] = 'hello';

var_dump($_SESSION['foo']);

如果您多次加载该页面,您是否看到过消息hello

如果是,那么您的问题与您的代码有关,这意味着您可能会在某处以某种方式破坏 session 值,但如果上述方法不起作用,则可能是您的 session.save_path不可写。

这给了你什么?

<?php

var_dump(is_writable(ini_get('session.save_path')));

关于php - php编程时, session 值在页面之间不持久的原因可能是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10749112/

相关文章:

php - 创建 Javascript Api 接口(interface)

Php 登录,无法继续 session

ios - Facebook iOS Graph API 事件

php - 如何使用 DbSession 在 Yii2 中创建用户 session 管理系统

php - 获取 Mysql 服务器已消失错误

PHP 和 mysql 连接不工作

javascript - 按下按钮时,如何将用户上传的图像传递到另一个 div?

javascript - 将 Facebook PHP SDK 与 Facebook JavaScript SDK 2014 结合使用

c# - 从数据集中完全删除一行

php - 生成按钮来更新 php 中的库存