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 に答える