ホームページ  >  記事  >  バックエンド開発  >  setcookie の問題

setcookie の問題

WBOY
WBOYオリジナル
2016-06-23 14:03:39981ブラウズ

setcookie('uid', $id);

1. 3 番目のパラメータが渡されない場合、ブラウザを終了すると Cookie が無効になることを意味しますか?

2. jquery の $ajax を使用して php を呼び出し、setcookie('uid', $id, $cookietime, '/', '.xxx.net', 0); を実行しました。なぜ $ajax でリロードできますか。ページをクリックすると Cookie が取得されますか?
そして、%temp%..Temporary Internet Files ディレクトリに、対応する Web サイトの Cookie ファイルが表示されません。


ディスカッションへの返信 (解決策)

サーバー時間の問題です。

もう大丈夫です。
別の質問をしてください。
setcookie('uid'); を使用して
Cookie を削除します。判決は無効となります。ここで何が起こっているのでしょうか?

IE8 にはこの問題があります。 。 360Chromeでは問題ありません。 。

setcookie('uid',null)

統一します。この setcookie('uid') は使用しないでください

setcookie("uid", "", time() - 3600);
統一してください、これは使用しないでください setcookie('uid');

setcookie("uid", "", time() - 3600); まだ動作しません、IE8 はログインしている限り COOKIE を保存できません。ログアウトして、再度ログインします。

理由はわかりません。ディスカスを見てみました。
discuz はそれを処理するための dsetcookie を書きました。

尊敬します。 。 。 。

スコープを設定していないため

ログイン:

setcookie('uid', $dzid, $cookietime, '/', '.xxxx.net', 0);

setcookie('upd', $pass, $ cookietime, '/', '.xxxx.net', 0);

ログアウト:
setcookie('uid', '', $time - 3600, '/', '.xxxx.net', 0);
setcookie('upd', '', $time - 3600, '/', '.xxxx.net', 0);

360Chrome では繰り返しログインできます。
IE が動作しません。ログインを 2 回まで繰り返すと、Cookie が保存されなくなります。
IE を閉じて再度開く必要があります。テストには IE8 を使用しました。

discuz も setcookie を使用するので問題ありません。
外側にカプセル化された dsetcookie の層がありますが、それはあまり重要ではないようです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。