この記事では主に、PHP における Cookie と セッション の違いと、Cookie とセッションの使用方法の概要に関する関連情報を紹介します。非常に優れており、必要な友人は参考にすることができます
具体的には、 Cookie は「クライアント」に保存され、セッションは「サーバー」に保存されます
Cookie は http プロトコルを拡張することによって実装されます
Cookie には主に次の情報が含まれます: 名前、値、有効期限、パス、ドメイン。
メリットとデメリット:
セキュリティを考慮すると、セッションを使用する必要があります。
セッションとCookieの使用の概要:
設定ファイルに保存することをお勧めします。コードは次のとおりです。以下:
<sessionState timeout="2" mode="StateServer" />セッション損失の問題を解決するには
2. 長時間操作がなかった場合、バックグラウンド管理がセッションを無効にし、再度ログインすることを希望します。 session.timeout=5 を使用できます。分単位。これは、5 分以内に他の操作がない場合に期限切れになることを意味します。または、構成ファイルで 8d16a282d6b1276845bbebf466ffd687 を構成することもできます
3 . Cookieの有効期限の設定if (Request.Cookies["httpCookie"] != null) { Session["admin"] = Request.Cookies["httpCookie"].Values["admin"].ToString(); } if (Session["admin"] == null) { this.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert('请重新登 录');location.href='logins.aspx'</script>"); }
次に、終了時の処理について説明します
1. 終了時に、セッションと Cookie の値がクリアされます。いくつかのセッション方法の違い: Session.clear(): セッション内のすべてのセッション キー値がクリアされるが、セッションはまだ存在することを示します。Session.RemoveAll() と同等です Session["admin"]=null:キーが指定されます。値はクリアされて解放されます。これは session["admin"]="" とは異なります。クリアされますが、セッションは解放されません。これは session.Remove("name"); Session.Abandon() は、現在の Session オブジェクトが削除され、次のセッションは新しい Session になります。 主な違いは、Session.Abandon を使用する場合、Session_End メソッド (InProc モード) が呼び出されることです。 Session_Start メソッドは、次のリクエストが来たときに起動されます。 Session.Clear はセッション内のすべてのデータをクリアするだけであり、セッションを終了しないため、セッションがタイムアウトしたときに、これらのメソッドは呼び出されず、セッションをアクティブに終了します。また、現在のセッションも自動的に終了します。 2. Cookie をクリアする方法を見てみましょう A. tpCookie cookie = System.Web.HttpContext. cookie.Expires = DateTime Now.AddDays(-1);System.Web.HttpContext.Current.Response.Cookies.Add(cookie); B, tpCookie httpCookie = Request.Cookies["httpCookie"]; Response.Cookies.Add(httpCookie); 3。つまり、Session["admin '] =null は問題なく、Cookie は上記の方法に従ってクリアできます 1. 終了するときに、時間を書き込むためのログアウト ページを作成できます。
と同等です。
Current
AB どちらの方法も利用可能です
提案とコメント:
以上がPHPにおけるCookieとセッションの違いとCookieとセッションの使い方の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。