クッキー|クッキー
概要
Cookie は、サーバーまたはスクリプトが HTTP プロトコルの下でクライアントのワークステーション上の情報を維持するための方法です。 Cookie は、Web サーバーによってユーザーのブラウザに保存される小さなファイルであり、ユーザーに関する情報 (識別番号、パスワード、ユーザーが Web サイトで購入する方法、ユーザーがサイトを訪問した回数など) が含まれる場合があります。ユーザーがサーバーに接続するたびに、Web サイトは Cookie 情報にアクセスできます。
Cookieの設定方法は?
PHP では、setcookie 関数を使用して Cookie を設定できます。 Cookie は HTTP ヘッダーの一部であるため、コンテンツがブラウザに送信される前に Cookie 関数を設定する必要があります。この制限は header() 関数と同じです。クライアントから渡された Cookie はすべて、自動的に PHP 変数に変換されます。 PHP は情報ヘッダーを取得して分析し、Cookie 名を抽出して変数に変換します。したがって、setcookie("mycookie", "Cookies") などの Cookie を設定すると、php は値 "Cookies" を持つ $mycookie という名前の変数を自動的に生成します。
setcookie 関数の構文を見てみましょう:
init setcookie(string CookieName, string CookieValue, int CookieExpireTime, path, domain, int secure);
パラメータの説明:
PATH : Web サーバー上のディレクトリのデフォルトは、呼び出されたページが存在するディレクトリです。
DOMAIN: Cookie が使用できるドメイン名。デフォルトは、呼び出されたページのドメイン名です。このドメイン名には 2 つの「.」が含まれている必要があるため、トップレベル ドメイン名を指定する場合は、「.mydomain.com」を使用する必要があります
SECURE: 「1」に設定すると、Cookie はユーザーのブラウザによって使用されます。 安全であると考えられるサーバーによって記憶されます。
Cookie の使用例
ユーザーの ID を自動的に識別し、関連する操作を実行する登録を必要とするサイトがあるとします。登録ユーザーの場合は、情報を送信します。登録ユーザーでない場合は、登録ページへのリンクが表示されます。
上記の要件に従って、まず登録ユーザー情報(姓名、メールアドレス、来店カウンター)を保存するデータベースを作成します。
まず次の手順に従ってテーブルを作成します:
mysql> データベース ユーザーを作成します。
クエリ OK、1 行が影響を受けます (0.06 秒)
mysql> use users ;
データベースが変更されました
mysql> テーブル情報を作成します (FirstName varchar(20)、LastName varchar(40)、count varchar(3)); OK、影響を受ける行は 0 です (0.05 秒)
次に、データベースに対して Cookie をチェックするための PHP ページを構築します。
PHP は識別可能な Cookie を対応する変数に変換できるため、「myCookies」という名前の変数を確認できます。 ……
} else { //Cookieが存在しない場合
……
}
?>
When Cookie 存在する場合、次の手順を実行します:
最初に Cookie 値を取得し、explode 関数を使用してそれをさまざまな変数に分析し、カウンターを増やし、新しい Cookie を設定します:
$info =explode("& ", $myCookies);
…
$count++;
$CookieString=$FirstName.'&'.$LastName.'&'.$email.'&'.$ count ;
SetCookie ("myCookies",$CookieString, time()+3600); //Cookie を設定します
次に、HTML ステートメントを使用してユーザー情報を出力します。
最後に、新しいカウンター値でデータベースを更新します。
この Cookie が存在しない場合は、登録ページ (register.php) へのリンクが表示されます。
以下の register.php はユーザー登録ページです:
/* register.php */