1

phpでは、数か月前、私はもともと次のようなCookieを設定しました。

<?php
setcookie('reituser', 'john', time()+3600*100000000000, '/', '.'.$_SERVER['SERVER_NAME']);
?>

しかし今、私はそれをそのように設定解除しようとします

<?php
// this is the only line of code at http://mysite.com/test.php
setcookie('reituser', '', time()-10, '/', '.'.$_SERVER['SERVER_NAME']);
?>

ただし、ブラウザを何度更新してもhttp://mysite.com/test.php、$_COOKIE配列にはreituser=>johnが入力されています。この問題を解決するにはどうすればよいですか?

何らかの理由で、上記の方法で新しいCookie変数を設定して削除できます。しかし、機能していないように見えるのはreituser=>johnです。reituserという単語は予約語か何かですか?

4

2 に答える 2

0

試してみてください:

setcookie('reituser', '', time()-42000, '/', '.'.$_SERVER['SERVER_NAME']);

また、Firefox + Firebugを使用すると、Cookieドメインとその他のCookie値を確認して、setcookie()関数に設定を解除するための適切なパラメーターを指定しているかどうかを確認できます(つまり、Cookieの設定を解除する際に問題となるのはパスとドメインのパラメーターである可能性があります) 。

于 2013-03-21T22:07:40.630 に答える
0

@ジョンあなたは正しいです、ドメインが変更されました。私は今どうすればいい?–ジョン2日前

@Jon-わかりました、このコードは問題を修正しましたsetcookie('reituser'、''、time()-10、'/'、'.mynewsitebecauseitchanged.com'); –ジョン2日前

于 2013-03-24T02:50:31.623 に答える