[PHP-users 17526]Re: セッション変数が取得できない
三枝 隆司
saegusa @ hcu.co.jp
2003年 8月 27日 (水) 09:13:53 JST
SAEです。
SetoさんRESありがとうございます。
> まず $_SESSION を使用するなら session_register() は不要です。
はい。マニュアルにそのような記述があったのですが、
不用なのか、やってはいけないのか、確認のためつけたり取ったりしてました。
取ってテストしてみます。
>だからここでは 何も表示されないんだと思いますよ。
以下のように、代入個所を移動してやってみました。
===========test1.php===========
<HTML><BODY>
<FORM NAME="form1" ACTION="test1.php" METHOD="POST">
セッション変数に登録
<input type="text" name="_message" size=30>
<input type="submit" value="送信">
</form><hr>
<?php
session_start();
session_register('mess');
$_SESSION['mess'] = $_REQUEST['_message'];
print '<li>セッション名: ' . session_name() .'<BR>';
print '<li>セッションID: ' . session_id() .'<BR>';
print '<li>現在のセッション変数:' . $_SESSION['mess'] .'<BR>';
?>
<HR>
<A HREF="test2.php">test2.php</A>
</BODY></HTML>
===========ここまで===========
以下のように、1度目にtest1.phpを呼んだ直後は $_SESSION['mess'] が
参照できています。
===========結果===========
・セッション名: PHPSESSID
・セッションID: 3a7139aa5f85c75a896bf8412e896817
・現在のセッション変数:ssssss
===========ここまで===========
が、test2.phpを呼ぶと、セッション名、セッションIDは取得できるが、
$_SESSION['mess'] は参照できない。状態になります。
いろんなパターンで試してみたつもりなんですが...
もちろん、ネット上にあるサンプルもいくつか試したのですが、NGでした。
PHP-users メーリングリストの案内