Web サーバーが再起動されたため、PHP セッションは機能しなくなりました。何人かが私に有益なアイデアをくれましたが、どれもうまくいきませんでした。私は非常に単純化された例を作成しましたが、うまくいくと確信していますが、うまくいきません。誰かが理由を説明できれば、私はとても感謝しています。これまでに丸一日費やしました。
私の理解では、 $_SESSION は「超グローバル」であるべきであり、どこでも利用できるということです。
わかりやすくするために、コードがまだ機能しない、つまり "Hello World" を印刷する 2 つのページを削除して書き直しました。
誰かがこれのどこが悪いのか教えてくれたら、とても感謝しています!
----------- ウェブページ ONE.PHP -----------------
<?PHP session_start(); ?>
<html>
<head>
<title>Page One</title>
</head><body>
<?PHP
$_SESSION['testvalue'] = "Hello World";
?>
<p><a href="pagetwo.php">Click here</a> to see page two</p>
</body></html>
----------- ウェブページ TWO.PHP -----------------
<?PHP session_start(); ?>
<html>
<head>
<title>Page Two</title>
</head><body>
<?PHP echo $_SESSION['testvalue']; ?>
<br>
</body></html>
Web ページ 1 を実行し、リンクをクリックしてページ 2 に移動すると、「Hello World」を表示するページの代わりに
注意: 未定義のインデックス: c:\inetpub\wwwroot\two.php の testvalue
C:\PROGRAMDATA\PHP\SESSIONS を確認したところ、そこにというファイルがあります
sess_905m06314ibdubru8ko0aqj4d1
以下を含むもの
testvalue|s:11:"こんにちは世界";
このファイルはone.phpを実行したときに作成されたもので、アプリがセッション情報を書き込む権限を持っていることを示しています
私が密集しているように見えたら申し訳ありませんが、なぜこれが機能しないのか理解できず、一日の大半を費やしてそれを理解しようとしました.
ありがとうございました。