[PHP-users 10241] Re: session格納法について(サマリ)
S.Okazaki
php-users@php.gr.jp
Thu, 19 Sep 2002 10:42:39 +0900
おはようございます、岡崎です。
自己レスです。
> ページが "mode" によってが複数に別れたスクリプトがあります。
> (snip)
> 何がしたいかと言えば、ページ毎に分けたデータを
> $ses1 , $ses2 , $ses3 , …のようにセッションに登録したいのです。
> (snip)
> ときっちりと別れて登録されていますが、print_r($ses1)で見てみると
>
> Array (
> [0] => Array ( [0] => 2002 [1] => 9 [2] => 18 …) //ses1
> [1] => Array( [0] => 8 [1] => 202 [2] => 5 …) //ses2
> )
>
> と、一つの配列として表示されてしまいます。
これに関しては、コードにミスがありました。
しかし、「これは仕様では!?」と思いこんでいたため、
ミスを見つけることが出来ませんでしたが、お陰様で、
仕様ではないとわかり、くまなく見たところ発見できました。
ありがとうございました。
> また、session_unregister("ses1");
> とやれば、全てのセッションデータが削除されます。
これに関しては、凄く愚かな理由でした(^^;
case "2":
if(isset($bt)) {
session_unregister("ses2");
header("Location: $_SERVER[PHP_SELF]?mode=2");
}
$ses1=array($_POST[data1],$_POST[data2],…);
session_register("ses1");
:
:
print<<<EOF
<form action="$_SERVER[PHP_SELF]?mode=2" method=post>
<input type=submit name="bt" value="delete session">
</form>
EOF;
break;
と書いていたため、セッションを消した後に、「空の」POSTされた
データを再び、セッションに書き込んでいました。
その為に、全てのセッションが消されたように見えていただけでした。
お恥ずかしいことですが、ずっと気がつきませんでした(^^;
どうもありがとうございました。
/_/_/_/_/_/_/_/_/_/_/_/_/_/
Japan Human Base
Sotaro Okazaki
Email : okazaki@jp-hb.com
/_/_/_/_/_/_/_/_/_/_/_/_/_/