php - 尽管 session_start() 会话变量不持久,会话数组中的值消失
问题描述
这是我的代码:
<?php session_start();
if(empty($_SESSION['name'])){
$_SESSION['name'] = array();
$_SESSION['price'] = array();
$_SESSION['qty'] = array();
$_SESSION['pic'] = array();
}
array_push($_SESSION['qty'], $_POST['qty']);
$details = explode("|", $_POST['item']);
array_push($_SESSION['name'], $details[0]);
array_push($_SESSION['price'], $details[1]);
array_push($_SESSION['pic'], $details[2]);
//I have tested the values inside the array here with 'echo', and they were all existing.
header("Location: ../p4-cartcopy.php");
这是存储会话值的代码,我在此页面上测试过这些值确实存储在会话变量数组中。
但是,当我在不同的页面上使用以下代码对其进行测试时:
<?php session_start();
$namer = $_SESSION['name'][0];
if(isset($_SESSION['name']))
echo $namer."hello";?>
我只能看到你好,但看不到之前存储在会话中的实际名称变量。似乎设置了会话变量,但数组为空。
任何帮助表示赞赏,谢谢。
解决方案
推荐阅读
- python - 获取不在不同模型的多对多关系中的对象?
- c - 在驱动程序的上下文中,术语“框”是什么意思?
- java - 如何在停止异步方法期间避免 java.nio.channels.ClosedByInterruptException 异常
- django - 如何获得模型字段的指定?
- apache-kafka - 设计 Kafka 消费者和生产者以实现可扩展性
- fortran - 以可移植方式获取 Fortran 中所有环境变量的列表?
- html - 如何删除嵌入的 YouTube 视频下方的区域?
- java - 比较表示为链表的两个数字
- javascript - 为什么 .then() 根本不执行我的 Promise?
- python - SymPy 无法求解三角表达式,但 Matlab 可以