1

我有以下情况

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() 仍然是空文件,问题就会出现。

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

谢谢。

4

1 回答 1

0

听起来您的 Graph.php 正在用一个新的空会话覆盖会话 cookie。您在 Graph.php 中跳过的“普通”PHP 文件的开头是否包含代码?可能是您ini_set用来更改此跳过的启动代码中的某些会话选项(例如会话文件目录'session.save_path')。

于 2013-01-12T03:34:07.687 回答