我是很多新手,所以如果这个问题很明显,我道歉。我找了很长时间的答案。
我正在努力在重定向上使用$ _SESSION变量。我在一个页面中设置变量并尝试在另一个页面中读取该变量,用户从第一页重定向到该页面。由于某种原因,第二页无法读取变量。这是我目前的代码:
PHP第1页:
<?php
if(!session_id()) session_start();
$_SESSION['someVar'] = "someValue";
echo "<script type='text/javascript'>window.location.href='/index.php';</script>";
PHP第2页(index.php):
<?php
if(!session_id()) session_start();
if (empty($_SESSION["someVar"])) {
echo "no value!";
} else {
echo $_SESSION["someVar"];
}
?>
我总是“没有价值!”。我已经尝试了几个方法来解决这个问题:
关于这一切的真正恼人的事情是,当我在本地运行它时(使用虚拟主机),代码可以正常工作。只有当我把它加载到一个“真正的”服务器上时才会失败,这告诉我问题出在其他地方,但我不知道在哪里看。
答案 0 :(得分:0)
也许您的会话目录不可写。
使用session_save_path(),这是一个测试它的小函数。
function check_session_path() {
echo is_writable(session_save_path()) ? "writable." : "not writable.";
}
在你的php页面1:
<?php
check_session_path();