1. Cookieはユーザーを識別するためによく使用されます。 Cookie は、サーバーがユーザーのコンピュータ上に残す小さなファイルです。同じコンピュータがブラウザを通じてページをリクエストするたびに、Cookie も送信されます。 PHP を使用すると、Cookie 値を作成および取得できます。
1. クッキーを設定する
PHP は SetCookie 関数を使用して Cookie を設定します。
SetCookie 関数は Cookie を定義し、それを HTTP ヘッダーの末尾に追加します。 SetCookie 関数のプロトタイプは次のとおりです。 int SetCookie(文字列名、文字列値、int 期限切れ、文字列パス、文字列ドメイン、int セキュア);
パラメータの説明: Cookie名、Cookie値、有効期限(int)、有効なパス、制限されたドメイン名、https配信のみが有効です
使用例:
通常の使用:
setcookie('name','PHP淮北');
有効期限あり:
setcookie('name','PHP淮北',time()+24*60*60);//1日
Cookie はパス指向であり、パスが設定されていない場合、デフォルトでは、図に示すように、別のファイルの下の Cookie が別のフォルダに保存されます。デフォルトでは、mytest フォルダに保存されます。
クライアントとサーバー間の Web 通信プロトコルは http です。 PHP が http 経由でユーザー データを取得するために一般的に使用される 3 つのメソッドは、POST メソッド、GET メソッド、および Cookie です。 PHP のデフォルトの配信方法は Cookie であり、これも最適な方法です。
たとえば、MyCookier という名前の Cookie を設定すると、PHP は WEB サーバーが受信した HTTP ヘッダーからそれを自動的に分析し、$myCookie という名前の通常の変数と同様の変数を形成します。この変数の値が Cookie の値になります。
3. Cookieを削除する
既存の Cookie を削除するには、2 つの方法があります:
まず、name パラメーターのみを指定して SetCookie を呼び出します。その後、この名前の Cookie が関連コンピューターから削除されます。例: setcookie('name','');
もう 1 つの方法は、Cookie の有効期限を time() または time()-1 に設定することです。そうすれば、ページが閲覧された後に Cookie が削除されます (実際には期限切れになります)。 例: setcookie('name','PHP Huaibei',time()-24*60*60); Cookie が削除されても、その値は現在のページで引き続き有効であることに注意してください。Cookie 使用上の注意:
まず、HTML ファイルのコンテンツが出力される前に設定する必要があります (Cookie は HTTP プロトコル ヘッダーの一部であり、ブラウザとサーバーの間で情報を転送するために使用されるため、コンテンツの前に Cookie 関数を呼び出す必要があります) HTML ファイル自体に属するものが出力されます。
まずはPHPページからご利用いただけます
ob_start();//スタート
ob_end_flush(); //キャッシュを更新します
ヘッダー プロンプト エラーを防ぐことができます);
ブラウザごとに Cookie の処理方法が異なります
Cookie の制限はクライアント側で行われます。ブラウザで作成できる Cookie の最大数は 30 で、各 Cookie は 4KB を超えることはできません。各 Web サイトで設定できる Cookie の総数は 20 を超えることはできません。現在設定されている Cookie はすぐには有効になりませんが、次のページまで表示されません
2. セッションのご紹介
セッション メカニズムはサーバー側のメカニズムであり、サーバーはハッシュ テーブル (またはハッシュ テーブル) に似た構造を使用して、各 Web サイト訪問者に一意の識別子、つまりセッション ID を割り当てることができます。もちろん、セッションをデータベースに保存することもできます。これはより安全ですが、URL を使用する方が安全です。 pass PHP のセッションメカニズムは、Cookie を設定し、セッション ID (Session ID) をサーバー側で生成し、ユーザーに関連付けます。これらのセッションとページ間の転送に関連しています。
PHP関連関数
PHP にはセッションに関連する関数が多数ありますが、最もよく使用する関数は次のとおりです。
session_start(): セッションメカニズムを有効にし、セッションを使用する必要があるプログラムファイルの先頭で呼び出します。
session_register(): セッション変数を登録します
session_unregister(): セッション変数を(1つずつ)削除します
session_is_registered(): セッション変数が登録されているかどうかを判断します
session_distroy(): すべてのセッション変数を破棄します (ファイルを含むすべてのセッション変数が破棄されます)
次の点に注意する必要があります:
1. 関数 session_start() はプログラムの先頭で実行する必要があり、それ以外の場合は出力コンテンツを置くことはできません
「警告: セッション Cookie を送信できません - ヘッダーは既にあります
」が表示されます
このような警告メッセージを送信しました。
2. 関数 session_register() は、セッションに保存される関連変数を登録するために使用されます:
val は登録するセッション変数の名前です。登録時に「$」記号を追加せず、変数名のみを記述します。
。
5. session_destroy() 関数は主に、システムがログアウトして終了するときにすべてのセッション変数を破棄するために使用され、パラメーターを持たず、直接呼び出すことができます。
SessionとPHP.iniの関係の設定
1,session.save_handler = ファイル
セッションデータの読み取り/書き込み方法。デフォルトはファイルです。これにより、PHP のセッション管理機能は、指定されたテキスト ファイルを使用してセッション データを保存します
2,session.save_path = “/xammp/temp/”
セッション ファイルを保存するディレクトリを指定します。別のディレクトリに指定することもできますが、指定したディレクトリには httpd デーモンの所有者 (Apache や www など) からの書き込み権限が必要です。そうでない場合、セッション データは復元できません。 session.save_path = "N;/path" (N は整数) のように記述することもできます。これは、すべてのセッション ファイルが同じディレクトリに保存されるわけではなく、異なるディレクトリに分散されていることを意味します。これは、サーバーが大量のセッション ファイルを処理する場合に役立ちます。 (注: ディレクトリは手動で作成する必要があります)
3,session.auto_start = 0
このオプションが有効な場合、セッションはユーザーリクエストごとに初期化されます。推奨されません。session_start() を通じてセッションを明示的に初期化することをお勧めします。
以上がこの記事の全内容です。皆さんに気に入っていただければ幸いです。
http://www.bkjia.com/PHPjc/1035054.html