[PHP-users 9595] Re: セッション変数の内容が復活する

長谷川 勲 php-users@php.gr.jp
Wed, 28 Aug 2002 16:24:29 +0900


長谷川です。


Koichi Shimamura さんは書きました:
>---------- test2.cgi ----------
>#!/usr/local/bin/php
><?php
>  session_start();
>  $_SESSION = $_POST;
>  print_r($_SESSION);
>?>

$_SESSION = $_POST;
に問題があるのでは?
$_SESSION['C1'] = $_POST['C1'];
としないと本当のセッション変数に入らないのではないでしょうか?

Koichi Shimamura さんは書きました:
>島村です。
>
>いろいろテストをしているのですが、test1.cgi の form が submit されたとき
>セッション変数へのデータセットに違いがあるようです。
>
>checkbox を使っていることが最大の原因のようですが。
>
><input type="checkbox" name="C1" value="ON">
>
>のとき、チェックをつけないで submit すると次のページへは $C1 そのものが
>渡されませんが、既に $C1 が、セッション変数として生きていて、値がセット
>されていると、$C1 がそのままの状態で次のページへ引き継がれます。しかし
>$_SESSION['C1'] の方はチェックが付いていないので、変数そのものが渡されま
>せん。
>
>この時点で test2.cgi は、一つの変数(プログラマから見て)に、二つの状態
>がセットされていることになってしまいます。
>
>・・・これって、仕様なんでしょうか? $_SESSION の方は、セットする値が無
>いときは変数そのものを生成しないのに、旧来の方は、セットする値が無いとき
>は既存の変数にタッチしない(値があればそのまま、その値が生きてしまう)と
>いうことでしょうか。
>
>なんとなく、不便。
>
>島村幸一
>http://www.bekkoame.ne.jp/~joe90/
>
>_______________________________________________
>PHP-users mailing list
>PHP-users@php.gr.jp
>http://ns1.php.gr.jp/mailman/listinfo/php-users
>
>

----
長谷川 勲  hasegawa@rsk-kagoshima.grp.ricoh.co.jp