[PHP-users 25466] Re: セッションの読み書きのタイミングがおかしい

石井真介 bbswx419 @ ybb.ne.jp
2005年 4月 26日 (火) 00:49:21 JST


茂木様

石井です。
回答有難う御座います。

> read()はセッションが開始されてプログラム上に読み込まれる時に一度だけ、
> write()はプログラムが終了する時に一度だけ呼ばれます。

ログを仕込んで、確認したところ確かに
上記の挙動になっておりました。


もう一つ確認したいのですが、
session_start();で、セッションの開始後、
session_set_save_handlerで、登録されたread()が呼ばれますが、
read()で var=aというデータを取得したなら、
$_Session['var']=a
と自動登録されるという認識であっているでしょうか?


以上、宜しくお願い致します。

On Mon, 25 Apr 2005 17:57:41 +0900
Katsuo Mogi <mogi-k2 @ msg.biglobe.ne.jp> wrote:

> 茂木です。
> 
> In the message [PHP-users 25452] セッションの読み書きのタイミングがおかしい
>                <20050424234403.98DA.BBSWX419 @ ybb.ne.jp>
> 石井真介 <bbswx419 @ ybb.ne.jp> wrote:
> 
> > # 私の考えでは、
> > # $_SESSION['var'] とするとmy_sess_read関数が呼ばれ
> > # $_SESSION['var'] = test とするとmy_sess_writeが呼ばれる
> > # という認識を持っています。
> > # この認識が間違っているのでしょうか?
> 
> > この不具合の解決策をご存知の方がいらっしゃいましたら、お教え下さい。
> 
> read()はセッションが開始されてプログラム上に読み込まれる時に一度だけ、
> write()はプログラムが終了する時に一度だけ呼ばれます。
> 
> 変数に格納した瞬間と同時に、DBへ反映させるためには
> セッションの仕組みでは解決できないと思います。
> 
> データベースをラッピングしたクラスで
> $obj->setVar() の内部でDBをupdateかけるとかが正解かと。
> 
> --
> ---------------------------------
>  茂木克夫
>     mail: mogi-k2 @ msg.biglobe.ne.jp
>     site: http://www.momo.dyndns.org/~katsu/
> ---------------------------------
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://www.php.gr.jp/php/novice.php3

-- 
石井真介 <bbswx419 @ ybb.ne.jp>



PHP-users メーリングリストの案内