会话未恢复


Session not restored

我有以下场景

File1.php启动会话并设置$_SESSION['foo'] = 'Hello';

File2.php启动会话并使用$_SESSION['foo']没有问题

File3.php启动会话并使用$_SESSION['foo']没有问题在File3产生的输出中有以下内容:

<img id="graph" src="Graph.php" alt="Graph" />

现在,当Graph.php文件运行时,它启动会话,但$_SESSION['foo']不存在。

之后,如果我刷新File3, $_SESSION['foo']不再存在。

同样的事情,如果我回到File2, $_SESSION['foo']丢失。

我把问题归咎于Graph.php中的session_start()这一行。如果我完全清空Graph.php,只在其中放入session_start()行,就会出现问题。如果我删除session_start()仍然是空文件,问题就出现了。

我真的很困惑。有人能帮忙吗?

谢谢。

听起来您的Graph.php正在用一个新的空会话覆盖会话cookie。是否有代码,包括在"正常"PHP文件的开始,你跳过了在图。PHP ?在这段跳过的启动代码中,您可能正在使用ini_set更改一些会话选项(例如会话文件目录'session.save_path')。