質問: cookieがクリアされない 入力フォームを作っています。 トップのフォームにクッキーをセットして、確認画面→登録完了フォームでクッキーをクリアにしています。 クッキーの登録は全て良いんですが、cookieは、ieではちゃんとクリアされるんですが、netscape,firefoxではクリアされません。 色々試したんですが、お手上げ状態です。 ご教授お願いします。 print "content-type: text/html\; charset=shift_jis\n"; $cookieset .= "set-cookie: $cookiename=$cookievalue\; expires=$gmtstring\;"; print "\n"; print "content-type: text/html\; charset=shift_jis\n"; $clearcookie .="set-cookie: $cookiename=clear\; expires=$expirestimestring\;";#過去の日付'thu, 01-jan-2000 00:00:00 gmt' print "\n";
回答: なぜクリアされないか分かりませんが、ぼくの場合はデータを空白で上書きしています。 ですので、一度cookieを削除する処理は、上と全く同じにして、値だけ空白にしてみてはどうでしょう? cookieはデータの一時保存というのが目的ですから、データさえ読み込めなくなれば、目的は達成かと思われます。 ぼくも悪戦苦闘した時期に、cookieが消えなくて、今の方法にしました。何で設定時間を過去にしたのに、削除できないんでしょうね。(苦笑) あと、どうしても削除にこだわるなら、時間を上のように固定するのではなく、現在時間(および、数秒前)に設定してみてはどうでしょうか。ちょっと処理は多くなりますが、試してみてください。何か変わるかもしれません。