ホームページ  >  記事  >  バックエンド開発  >  PHP セッション制御 SESSION と COOKIE の概要

PHP セッション制御 SESSION と COOKIE の概要

WBOY
WBOYオリジナル
2016-06-23 13:33:021063ブラウズ

セッション制御の背景紹介
ユーザー追跡を実装するためのいくつかの方法:
1. 現在のページの変数ページ
ページの実行が完了すると、変数は解放されます。
2. 2 つのページ間で変数を渡す get
URL/abc.php?id=12234&age=2 を通じて値を渡す ユーザー追跡はできますが、面倒すぎます。
3. セッション レベルのセッション
同じユーザーが同じ Web サイト上で自分の変数を共有します。
4. グローバル glboal
ファイルとデータベース。誰でも、どのウェブサイトでも使用できます。つまり、セッション制御により、サーバーは実際に、同じクライアントによって行われた連続したリクエストを追跡できるようになります。
SESSION と COOKIE の違い
Cookie: 最も重要なことは、サーバーがクライアントに保存する情報をクライアントに送信することです。原則: ユーザーがサーバーにアクセスすると、サーバー スクリプト言語はビジネス ロジックに基づいてユーザー (ログイン) に Cookie を設定し、ユーザーはクライアント上の特定のフォルダーにこの Web サイトのテキスト (通常はドメイン名に関連する) を作成します。コンピュータ。保存される変数を記録するために主に使用されます。ユーザーが他のページにアクセスすると、http プロトコルは httpd を通じて、クライアントによって設定されたテキストの内容を他のページにもたらします。ヘッダーを使用します。複数の個人アクセスは、前の手順を繰り返します。
このウェブサイトの情報を保存するテキストファイルをCookieファイルと呼び、このような仕組み全体をCookieメカニズムと呼びます。
Firefox では、Cookie 情報は通常のテキスト情報ではなく、暗号化されています。ブラウザで直接表示できます:
ツール -> オプション -> プライバシー -> 履歴 -> カスタム履歴設定を使用 -> Cookie を表示
実際、Cookie の使用は初期には非常に物議を醸しました。指定されたフォルダーに、指定されたファイルを書き込みます。このファイルはテキストである必要があります。
設定方法:
1. Cookie setcookie (名前、値、保存時間) を設定します。
注:
⑴ 保存時間が書かれていない場合は、ブラウザを閉じると Cookie が消えることを意味します。
⑵ スーパーグローバル配列 COOKIE を使用して Cookie を取得します (クライアントは再度ページにアクセスしたときに既に Cookie データを渡しています) ⑶ cookie2, setcookie(name, value, less than the current time); 1 注: ⑴ Cookie の値を設定するには、setCookie を使用する必要があり、_COOKIE[”]=xxoo は使用できません
⑵ setcookie の値を設定する場合、2 番目のパラメーターは配列型にすることはできません
⑶ setcookie には配列を格納できます。 xxoo[xx] を使用する必要があります。配列はインデックス付きまたは結合可能です。
⑷ setcookie でインデックス付きの配列が使用されているが、この形式で添え字を指定しない場合、添え字は常に 0 になります。次の値は前の値を上書きします
⑸ Cookie を設定した後、その Cookie 値を同じページですぐに使用すると、サーバーがクライアントにその値を保存するよう要求したばかりなので、その値は初めて使用できなくなります。
⑹ setcookie には 3 番目の値があり、これは Cookie によって設定されたパスです
3. セッション:
アップグレードされました。 Cookie はスペースを消費しますが、Web サイトの COOKIE を読み取ることによって行われるコンピューター アカウントの漏洩よりも優れています。
原則: クライアントが初めて Web サイトにログインすると、一意の ID が割り当てられます。このとき、クライアントがセッション ID を取得すると、サーバーは割り当てられたユーザーのセッション ID に基づいてファイルを作成します。次回そのページにアクセスすると、セッション ID が Cookie の形式で引き継がれます。引き継がれると、サーバーはセッション メカニズムに従ってセッション ID ファイルを読み取ります。 4. セッションの設定方法
session_start( ); セッションを開くメカニズム セッションを開く
メカニズム:
⑴ クライアントが初めてサーバーを要求すると、session_start はセッション ファイルを作成するための ID を割り当てます
⑵ すでにセッションを設定している場合は、ファイルを検索します。
5. 値の取得と設定方法
SESSION['xxoo']=xxoo; value_SESSION['xxoo'] を設定するには、最初に開く必要があります。セッションを開始して値を取得します
6. セッションを破棄する方法
⑴session_start();
⑵ $_SESSION 配列をクリアします unset array();メモリ内に残っており、引き続き使用できます。
⑶ セッションファイル session_destory(); を破棄します
7. クライアントセッション ID を削除します
setcookie('session_name(),”, time()-1); ) ;
注:
セッション ID と setcookie を削除する場合は、sessionID の値を動的に取得するために
session_name(); を追加することをお勧めします。
php.ini の session.name オプションで表されるセッションの名前
session.auto_start は、session_start なしで各ページに入るときにセッションが自動的に開かれることを意味し、通常はオフになります。

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