ホームページ  >  記事  >  ウェブフロントエンド  >  セッションおよびCookieセッション制御の詳細を説明する

セッションおよびCookieセッション制御の詳細を説明する

韦小宝
韦小宝オリジナル
2018-03-14 17:44:591405ブラウズ

この記事では、sessioncookiesession コントロールについて説明します。セッションと Cookie セッション コントロールについて知らない場合、またはセッションと Cookie セッション コントロールに興味がある場合は、この記事を一緒に見てみましょう。さて、本題に入りましょう

フロントエンド開発者にとって、Cookie は setcookie や getcookie などのメソッドをカプセル化することがよくあると思いますが、セッションは私たちとバックエンドにとって最も馴染みのあるものです。開発 プロジェクトに取り組むときに使用しますが、その本質を理解していません。以下で詳しく説明します

cookie

保存場所: クライアントに保存されます
機能: このドメインは交差します。ページストレージデータ (通常はユーザー名、パスワードを使用するようです)

cookie には通常、以下の情報が含まれます:

セッションおよびCookieセッション制御の詳細を説明する

送信: 以下は、リクエストが送信されるたびの http リクエストメッセージです

セッションおよびCookieセッション制御の詳細を説明する

、Cookie は http メッセージとともにバックグラウンドに送信されます。Cookie とセッションの関係は、ファイルの形式で保存されます。セッションには有効期限など、さまざまな機能があります。以下で確認してみましょう。そして、php.ini ファイルを開きます (php の多くの設定情報が含まれています。多くの

コメント

を削除しました)

セッションおよびCookieセッション制御の詳細を説明する

以下で、セッション ID を詳しく見てみましょう


これは、上記の session.name = "PHPSESSID" と一致していることがわかります フロントエンド ブラウザがどのように sessionID を運び、それをバックグラウンドに送信するか、およびセッション ファイルがバックグラウンドで保存される場所はすでに理解しています。では、バックグラウンドでのsessionIDの具体的な使い方を分析して活用してみましょう

仕組みを分析するには、以下のセッションおよびCookieセッション制御の詳細を説明するphpコードを参照してください

<?php
    session_start();
    header("Content-Type: text/html;charset=utf-8"); 
    if ($_SESSION[&#39;username&#39;] != &#39;success&#39;) {
        /* /php/index.php为当前文件路径 */
        $string = <<< EOF
            <form action="/php/index.php" method="post">
                <input type="text" name="value">
                <input type="submit">
            </form>
EOF;
        echo $string;
    }
    if ($_SESSION[&#39;username&#39;] == &#39;success&#39;) {
        echo "登录成功".PHP_EOL;
    }
    if ($_POST[&#39;value&#39;] == &#39;ys&#39;) {
        $_SESSION[&#39;username&#39;] = &#39;success&#39;;
        echo "登录成功".PHP_EOL;
    }
?>

phpファイルを実行してセッションプロセスを体験してください

セッションおよびCookieセッション制御の詳細を説明する

http cookie ヘッダーのセッション ID がサーバーのセッション ファイル名と同じであることがわかります

このようにして、各リクエストのセッションに従って固有のセッション ファイルを見つけることができ、これが何であるかを確認できますファイルは次のようになります

username|S:7:"success";s|S:7:"success";ss|S:7:"success";

これはこのファイルの内容です、s、ss、ユーザー名が含まれています。s と ss は前にテストした名前です (無視できます)、以上です

username|S:7:"success";
その後、背景で判断できますセッションIDをもとに毎回ユニークなセッションを取得し、$_SESSION['username'] などを設定することでCookie間の通信を判断し実現します。

関連する推奨事項: セッションおよびCookieセッション制御の詳細を説明する


phpセッションとCookieの概要の共有

phpセッション制御セッション、Cookieの概要

以上がセッションおよびCookieセッション制御の詳細を説明するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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