[PHP-users 29916] Session使用時にsetcookie()を使用した場合の動作に付いて
Yoshitake Shinohara
yoshi @ yyn.jp
2006年 8月 1日 (火) 10:20:00 JST
よしたけと申します。
御無沙汰しております。
PHP 4.3.10での動作です。
下記のサンプルコードを実行して頂いた場合、常に「$_SESSION["Count"]」が1になります。
<?php
session_start();
$_SESSION["Count"]++;
setcookie("Count",$_SESSION["Count"]);
?>
<html>
<body>
ACCESS:<?php echo $_SESSION["Count"]; ?><br>
</body>
</html>
調べた結果、setcookie()関数を使用すると、session_start()で付加されるはずのCookie
が付かない様です。
明示的に「setcookie(session_name(),session_id());」を実行してあげないと意図した
動作になりません。
もちろん、setcookie()を一切使用しなければ、Session_IDはCookieに保存されます。
この動作は仕様でしょうか?
マニュアルを読む限りではみつかりませんでした。
bug reportは。。。件数多くて一通り見ましたけど見逃してる可能性大です(^^;
よろしくおねがいします。
PHP-users メーリングリストの案内