ホームページ  >  記事  >  バックエンド開発  >  PHP 1_PHP チュートリアルにおけるセッションと Cookie の原理と関係

PHP 1_PHP チュートリアルにおけるセッションと Cookie の原理と関係

WBOY
WBOYオリジナル
2016-07-14 10:07:08933ブラウズ

ショッピング経験のある友人は、商品を購入するときに、選択した商品が Web サイトでショッピング カートに記録されることを知っています。これらはセッション テクノロジと Cookie テクノロジを使用して実装されます。もちろん、Web プラットフォーム テクノロジの実装の詳細は若干異なります。ほとんどの場合、セッションと Cookie に使用されます。

セッションと Cookie が使用されるのはなぜですか? http プロトコルについて説明する必要があります。簡単に言うと、前に何が起こったのかわかりません。

PHP 1_PHP チュートリアルにおけるセッションと Cookie の原理と関係

サイト上でユーザーのステータスを追跡する必要がある場合、明らかにこれは機能しません。COOKIE テクノロジーについて話しましょう。

Cookie: 複数のページで一部の情報を共有するために使用できます。Cookie は HTTP プロトコルでサポートされており、ブラウザーがサーバーにページを要求すると、サーバーは HTTP メッセージとデータを返し、ブラウザーは受信した HTTP メッセージを解析します。テキストをサーバーから取得して、対応する操作を実行します。

サーバーメッセージ:

HTTP/1.1 200 OK

日付: 2012 年 12 月 6 日木 17:05:01 GMT

サーバー: Apache/2.2.17 (Win32) PHP/5.3.5
X-Powered-By: PHP/5.3.5
Set-Cookie: mycookie=Hello%2CCookie; 期限切れ=2012 年 12 月 6 日木 18:05:01 GMT; コンテンツの長さ: 44
キープアライブ: タイムアウト=5、最大=100
接続: キープアライブ
コンテンツタイプ: text/html

ここでは Set-Cookie のみに焦点を当てます: mycookie=Hello%2CCookie;expires=Thu, 06-Dec-2012 18:05:01 GMT; これは、ブラウザーに保存するように指示する Cookie 情報です。平たく言えば、「ブラウザー、この Cookie 情報を保存してください」という意味です。
形式は cookie などのキーと値のペアです。キーは publicinfo、値は hello、cookie です。形式は publicinfo=hello,cookie です。

ブラウザリクエストメッセージ:


/cookie/cookie1.php HTTP/1.1 を取得

受け入れる: */*

受け入れ言語: zh-CN

ユーザー エージェント: Mozilla/4.0 (互換性; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; . NET4.0C; .NET4.0E; InfoPath.2) Accept-Encoding: gzip、deflate

ホスト: ローカルホスト

接続: キープアライブ

クッキー: C4vN_2132_saltkey=MW4qwm12; C4vN_2132_lastvisit=1354808405; C4vN_2132_lastact=1354812024%09search.php%09forum_ lastvisit=D _36_1354812013; C4vN_2132_visitedfid=36; PHPSESSID=ggcr13idghctd9mi4gqllvcvs5=こんにちは%2CCookie

ここでは、ブラウザーがクライアントの Cookie 情報をサーバーに送信するため、リクエストと応答の間にステータス情報が維持されます。

PHP での Cookie の使用

PHP で Cookie を使用するには 2 つの方法があります。

1. システム関数 setcookie を使用して設定します

2. ヘッダー関数を使用して Cookie メッセージを構築します

これまでの知識により、これら 2 つの関数は実際には同じことを実行し、最終的には Cookie 情報を HTTP メッセージに書き込む必要があることがわかります

方法 1:

setcookie(Cookieキー名、値、有効期限、アクセスディレクトリ)

setcookie("mycookie","Hello,Cookie",time()+3600,"/");

echo "Cookie の表示";

?>

方法2:(ここでは、設定するCookieをHTTPメッセージに直接書き込む)

header("Set-Cookie: mycookie=123; 有効期限=2012 年 12 月 4 日火曜日 15:58:18 GMT");

echo "Cookie の表示";
サーバー側の Cookie にアクセスします:

echo $_COOKIE["mycookie"];

?>

Cookie へのアクセスは非常に簡単です。スーパー グローバル配列 $_COOKIE を使用し、[] に Cookie キーを入力するだけです。

Cookieを使用する原理は、一部のショッピングWebサイトやログイン機能がどのように実装されているかを知ることですが、Cookieには欠点もあります

セキュリティ: Cookie はクライアント側に保存されるため、ユーザー名やパスワードなどの一部の重要なデータは Cookie に保存できません。
ネットワーク送信: Cookie は HTTP 要求および応答メッセージに含める必要があるため、大量のデータを保存できません。

http://www.bkjia.com/PHPjc/477887.html

www.bkjia.com

本当

http://www.bkjia.com/PHPjc/477887.html

ショッピング経験のある友人は、商品を購入するときに、Web サイトで選択した商品がショッピング カートに記録されることを知っています。これらは、もちろん、さまざまな Web プラットフォーム テクノロジーを使用して実装されます。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。