0

これは、w3 の Web サイトから直接取得したものです。Cookie を正しく理解していない可能性がありますが、何も表示されないのはなぜですか?

$expire=time()+60*60*24*30;
setcookie("user", "Alex Porter", $expire);
echo $_COOKIE["user"]; 
4

3 に答える 3

1

ページを更新するか、新しいページに移動した場合にのみ、Cookie にアクセスできます。

スクリプトがロードされるとき、そのページの HTML ヘッダー フィールドはすでに設定されています。Cookie を使用できるようにするには、ページを再度レンダリングする必要があります (別の HTTP トランザクション)。PHPのドキュメントを確認してください:

Cookie が設定されると、次のページ読み込み時に $_COOKIE または $HTTP_COOKIE_VARS 配列を使用してアクセスできます。

于 2013-01-27T20:27:33.323 に答える
0

変数$_COOKIE[]は、スクリプトの開始時の状態を表します。つまり、変数を表示するには、次のページ リクエストを待つ必要があります。変数を手動でグローバル cookie 変数に追加することもできます$_COOKIE['user] = 'Alex Porter';が、問題は、ブラウザが実際に cookie を受け入れたかどうかわからないことです。

于 2013-01-27T20:33:44.323 に答える
0

お使いのブラウザが localhost/127.xxx Cookie を許可しているかどうかを確認してください。許可されている場合は、ページを更新してください。Google Chrome を使用している場合は、ここからすべてのブラウザの Cookie を確認できchrome://settings/cookiesます。

于 2013-01-27T20:37:32.877 に答える