• ベストアンサー

Cookieの削除

基本認証でアクセス制限されたページにログアウトボタンをつけたいのですが、やり方がいまいちわかりません。 javascriptでCookieを削除すれば良いというのをどこかで見た事がある気がするのですが… 教えてください(>_<;;

  • mrkk
  • お礼率94% (204/216)

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

cookieに保存してある認証のフォーマットがわかっているならば(恐らく name=xxxxxx という感じではないかと思う)、その中身を空にして( name= )保存しなおせば良いのではないかと思うのですが。 具体的には <input type=button onClick="fHoge('clear')"> function fHoge(mode) {  if(mode == 'clear') {   document.cookie = "name=";  } } こんな感じで消せないですかね。 因みに以下のソースで試した見たところ、 クッキーの中身はこんな感じで表示されました。 name=hoge; Date=2003/02/13%2011%3A42%3A04; TopType=1; Prefecture=3 -----以下ソース----- <html> <head> <script language="JavaScript"> <!-- var strings; function put(){ document.cookie = "name=hoge"; } function get() { strings = document.cookie; document.hoge.textbox.value = strings; } //--> </script> </head> <body> <form name=hoge> <input type=text name=textbox> <input type=button value=GET onClick="get()"> <input type=button value=PUT onClick="put()"> </form> </body> </html>

参考URL:
http://ash.jp/prog/jscookie.htm
mrkk
質問者

お礼

ありがとうございます! 参考にさせていただきます!

その他の回答 (2)

  • todo36
  • ベストアンサー率58% (728/1234)
回答No.3

サーバーサイドなら出来そうだが(ヒント:401) クライアントサイドで出来るのかな?? >javascriptでCookieを削除すれば良い <form>タグによる認証のことでしょう。 Cookieを無効にしても基本認証は出来ますよね。 従って、基本認証とCookieは関係ないと思いますが..

mrkk
質問者

お礼

そうなんですか… ありがとうございます!

noname#199778
noname#199778
回答No.2

cookieの有効期限を過去の時刻で設定して、cookieに書き込めば、その時点でcookieが削除されると思います。 一例を挙げます。 function cookiemonster(){ now = new Date(); now = now.toGMTString(); document.cookie="***=0; expires="+now; } この関数では、現在時刻を取得し、それをcookieの有効期限として利用されるGMT形式に直し、その値を有効期限に設定してcookieを書き出しています。 このとき、有効期限以外に何かしらの値をcookieに渡すようにしておかないとうまくいかないようですので、「***=0」と書いてある部分には、適当なキーを入れてください(こちらで一応動作確認をしたんですが、削除したいcookieに元から渡されているキーを指定すると良いようです)。 この関数を呼び出すと、その処理を行った時点でcookieの有効期限がその瞬間の時刻に設定されますので、処理が終わったときにはその時間は経過してしまっていますから、結果的に即時に破棄されるようになるはずです。 参考になれば幸いです。

参考URL:
http://tohoho.wakusei.ne.jp/wwwcook.htm
mrkk
質問者

お礼

ありがとうございます! 参考にさせていただきます!

関連するQ&A

  • cookieのログアウト処理

    setcookieを使って、cookieを取得させ、持っている人のみが見れるサイトを作りました。 しかし、ログアウトボタンの作り方がわからなくて悪戦苦闘しています。 ログインページをPHPで作って、ログインと同時にcookieを持たせて、 中のページ($HTTP_COOKIE_VARSを読ませるためだけに拡張子はphpですが基本HTML)に引っ張っています。 その中のページからログアウト(cookieを削除)させるにはどうしたらよいのでしょうか? すみませんが、お願いします。

    • 締切済み
    • PHP
  • Cookieがたまりっぱなし、でも削除で困っています。

    Cookieの削除という事を聞きますが、ためずに消していった方がよいのでしょうか。ファイルに山のようにたまっていました。消すと大変困るCookieはありますか。どの様に見分けますか。ページを保存7日にしてありますが期間を過ぎたら消えていっているのでしょうか。それにしては一杯たまっています。

  • Cookieの削除について

    1、大学のパソコンでヤフオクや楽天ショップをログインして使用し、終わる時にはきちんとログアウト(ログイン情報は保存していません)しましたし、履歴削除もしました。(お気に入りから)この場合、Cookieの削除をしていなくても、自分のIDやパスワードはばれませんよね? 2、Cookieの意味は「楽天サイト、ヤフオクに誰かがログインしました。」という情報だけが残り、サイトに入るのに手間なく入れるという事ですよね?(ID,パスワードはばれない) お手数おかけしますが回答よろしくお願いします

  • ブラウザを閉じた時にCOOKIEを削除したい

    ブラウザの×ボタンを押した時にCOOKIEを削除したいのですがJavascriptでブラウザを閉じたイベントをフックする方法をご存じのかたご教授願います。 ブラウザはIE6、FireFox、Operaを対象としたいですが、IE6だけでもOKです。 ブラウザの設定で終了時にCOOKIEの削除はできると思いますがサーバ側から書き込んだCOOKIEの内容をユーザに意識させる事無く削除する方法を検討してます。 よろしくお願いします。

  • cookieの削除

    cookieの削除 cookieを削除した場合、ブラウザで開いているページに影響はありますか? 沢山開いたままにして使っているため、全部閉じてしまいやしないかと心配で削除できません。 削除しないとできない手続きがあるようで困っております。 調べてみましたが、意味合いが伝わりづらく判断できませんでした。よろしくお願いします。

  • cookieについて教えてください

    (A) webサーバー側の設定によって、cookieにパソコンのMACアドレス、コンピュータ名、フルコンピュータ名、またはパソコン内に存在するファイル名を記録させることは出来るのでしょうか? (B) セッションcookie がwebサーバーから与えられる時には、ドメインの指定も備わっているため、セッションcookieは同時にファーストパーティーの形態を取り、[ファーストパーティの Cookie をブロックする]設定にしていると セッションcookie もブロックすると考えていたのですが Internet Explorer で、[ファーストパーティの Cookie をブロックする][常にセッション Cookie を許可する]状態でyahooメールにログインできました。 なぜでしょうか? http://itpro.nikkeibp.co.jp/article/COLUMN/20080221/294407/ セッションcookieにはドメイン指定があると書いてあります (1. Webアプリケーションが、Set-Cookie: NAME=VALUE; expires=DATE; path=PATH; domain=DOMAIN_NAME; secure (NAME=VALUEのみ必須)という形式のHTTPヘッダーを含めて、レスポンスを返す。) (C) http://blog.tokumaru.org/2013/02/purpose-and-implementation-of-the-logout-function.html ログインには[BASIC認証]と[フォーム認証]がありますが、ログアウトした場合、[BASIC認証]ではパソコン内に保存されたcookieは削除されず、[フォーム認証]では削除されるのでしょうか? (D) http://blog.tokumaru.org/2013/02/purpose-and-implementation-of-the-logout-function.html [フォーム認証]では、パソコン内のcookieにはセッションIDが保存されるだけだとありますが、googleや楽天のような大手ではなく、小さなショッピングサイトの中には[フォーム認証]でもcookieにIDとパスワードを保存するところがあるのでしょうか? それとも、そもそも[フォーム認証]では、cookieにIDとパスワードを保存できない、または出来るとしても今は保存するサイトはまず無いと考えてよいのでしょうか? (E) yahooやgoogleのログイン画面では、[ログインしたままにする][ログイン状態を保持する]というチェックボックスがあります。 このチェックボックスにチェックを入れてログインすると、cookieにはセッションIDではなく、IDとパスワードが保存されることになるのでしょうか? (A)(B)(C)(D)(E)について教えてください。

  • php cookieを利用してのログアウト処理について

    現在PHP、MYSQLを利用し会員制のサイトを構築中です。 COOKIEにてログイン情報を保持しています。 そこで、ログアウト処理に苦労しています。 ログアウトボタンを押すことにより setcookie('userid', '', time() - 36000); 上記の処理を行うことにより、cookieは削除されるのですが、他ページへ移動すると、再度cookieが生成されてしまいます。 こういった場合、どのようにすればよろしいのうでしょうか? ご教授頂ければ幸いと存じます。

    • ベストアンサー
    • PHP
  • Cookieを削除

    掲示板などに書き込んだときに 掲示板でクッキー設定がしてあると 名前などが残る場合がありますよね。 個人がブラウザの設定でCookieを削除するのではなく ブラウザ上のボタンなどを押すだけで Cookieを削除できるようなhtmlタグはないのでしょうか? <input type="reset" value="リセット"> みないな感じがいいんですが、これだと当然 残っているCookieは消えず、新たに書いた文字は消えるんですが。 ないのでしょうか?

  • アクセス制限について

    ここやYahoo!Japanの様に、ログイン画面で認証し、特定のページをログインした人にのみ公開したいのですが、どうすれば良いでしょうか? ただ単に、ページのアクセス制限をするのではなく、『トップページ等で一度ログインしたらログアウトするまでアクセス制限のある全てのページを閲覧可能』にする方法を探しています。 単純なアクセス制限ですと、各ディレクトリ毎に認証を行わなければいけませんので。 例えば、Yahoo!Japanでログインしないとメールやオークションのマイページは閲覧できませんが、一度ログインすればログアウトするまで認証無しでメール・マイページ等アクセス制限のあるページを閲覧できる・・・といったものです。 一応、HTMLやJavaScript等はマスターしているのですが、CGI等はまだまだ解らない事が多いです。 そういう説明があるサイト等ございましたら教えて頂けると幸いです。 宜しくお願い致します。

    • 締切済み
    • PHP
  • javascriptでcookieを削除するには

    以下のようにjavascriptでcookieを削除できると 思いますが、この方法だと IE以外のブラウザは削除できてないようです。 FIREFOXとOPERAは削除できませんでした。 javascriptでFIREFOXとOPERAでもクッキーが削除 できるような方法がありましたらご教授願います cName = "○○○○="; // 削除するクッキー名 dTime = new Date(); dTime.setYear(dTime.getYear() - 1); document.cookie = cName + ";expires=" + dTime.toGMTString();

専門家に質問してみよう