[PHP-users 858] Re: PHP4 で Cookie の処理について

FUKAYA Takashi php-users@php.gr.jp
Tue, 24 Jul 2001 15:55:44 +0900


こんにちは。深谷と申します。

On Tue, 24 Jul 2001 15:44:46 +0900
Kenji Tagami <akatsuki@m78.com> wrote:

>  全て記載すると長くなるので、端折っていますが、Cookie の記
> 録と取り出して HTML に埋め込む処理を以下のようにしています。
>  そして書き込み操作(case 'reg')を実行したところ、ブラウザ側
> には Cookie が正常に記録しているにもかかわらず、case 'reg' 
> 内の Htmlshow() では Cookie を取り出せないでいます。
>  一度、リロードをしてあげるか、もう一度書き込み操作(case
> 'reg')をしてあげると正常に Cookie を取り出せて表示できます。
>  このように初回の書き込み直後のみ正常に Cookie が取り出せな
> い現象の原因が分かる方がいましたら助言をお願いします。

 これは仕様です。
 setcookie関数で指定したcookieがヘッダ情報としてブラウザに渡さ
れます。ブラウザは次回以降そのcookieを送ってくるため、PHPでは
cookieとして受け取れます。
 つまりSetCookie関数を呼び出した時点ではまだ、cookie自体は存在
しないことになります。(なのでcookieの名称の変数は存在しない)

 setcookieをまとめている関数(この場合は、Set_cookie関数)内で、
setcooki関数に渡したのと同じ値をGet_cookie関数内で取得している変
数に変数もセットすればよいかと思います。


# 間違い等ありましたがご指摘下さい

-- 
深谷 崇
mailto: fukaya@dokokano.com
spamto: dareka@dokokano.com
URL: http://www.dokokano.com/