ホームページ バックエンド開発 PHPチュートリアル PHP Cookie設定 ログイン削除 詳細解説_PHPチュートリアル

PHP Cookie設定 ログイン削除 詳細解説_PHPチュートリアル

Jul 13, 2016 pm 05:14 PM
cookie php もの 導入 消去 はい ログイン プログラム開発 設定 詳しい説明

Cookie はすべてのプログラム開発に存在するものです。Cookie の設定 (SetCookie) とログインの削除 ($_COOKIE) の使用方法を紹介します。

1. クッキーを設定する

PHP は SetCookie 関数を使用して Cookie を設定します。注意すべき点の 1 つは、Cookie は HTTP プロトコル ヘッダーの一部であり、ブラウザとサーバーの間で情報を転送するために使用されるため、HTML ファイル自体に属するコンテンツが出力される前に Cookie 関数を呼び出す必要があることです。

SetCookie 関数は Cookie を定義し、それを HTTP ヘッダーの末尾に追加します。 SetCookie 関数のプロトタイプは次のとおりです。

int SetCookie(文字列名、文字列値、int 期限切れ、文字列パス、文字列ドメイン、int セキュア);

名前を除くすべてのパラメータはオプションです。 3 つのパラメータ値、パス、およびドメインは空の文字列に置き換えることができ、それらが設定されていないことを示します。expire パラメータと secure パラメータは数値であり、0 で表すことができます。期限切れパラメータは標準の Unix タイムスタンプで、time() または mktime() 関数を使用して秒単位で取得できます。 secure パラメータは、この Cookie が暗号化された HTTPS プロトコルを介してネットワーク上で送信されるかどうかを示します。

現在設定されているCookieはすぐには有効になりませんが、次のページまで表示されません。これは、設定されたページでCookieがサーバーから顧客のブラウザに渡され、ブラウザが顧客からCookieを転送できるためです。次のページへ ファイルがマシンから取得されてサーバーに返される理由。

同じページ上での Cookie の設定は実際には後ろから前へ行われるため、新しい Cookie を挿入する前に Cookie を削除したい場合は、最初に挿入ステートメントを記述し、次に削除ステートメントを記述する必要があります。そうしないと、望ましくないエラーが発生する可能性があります。

いくつかの例を見てみましょう:

クッキーを作成するには?

setcookie() 関数は、Cookie を設定するために使用されます。

注: setcookie() 関数は タグの前に配置する必要があります。

文法

setcookie(名前、値、有効期限、パス、ドメイン);

シンプル:

コードは次のとおりですコードをコピー
SetCookie(“MyCookie”, “MyCookie の値”);

有効期限あり:

SetCookie(“WithExpire”, “1時間で期限切れ”, time()+3600);//3600秒=1時間

すべてが利用可能です:

SetCookie(“FullCookie”, “完全な Cookie 値”, time()+3600, “/forum”, “.phpuser.com”, 1);

ここでもう 1 つ説明すべき点があります。たとえば、サイトに複数の異なるディレクトリがある場合、パスなしで Cookie のみを使用すると、あるディレクトリのページに設定された Cookie は別のディレクトリのページには表示されません。言い換えれば、Cookie はパス指向です。実際、パスが指定されていない場合でも、WEB サーバーは現在のパスを自動的にブラウザーに渡し、パスを指定すると、サーバーは設定されたパスを使用するように強制されます。この問題を解決するには、SetCookie を呼び出すときにパスとドメイン名を追加します。ドメイン名の形式は「www.phpuser.com」または「.phpuser.com」です。

SetCookie関数のvalueを表す部分は渡すときに自動的にエンコードされます。つまり、valueの値が「test value」の場合、URLのメソッドと同様に渡されたときに「test%20value」になります。 。もちろん、PHP は Cookie 値を受信すると自動的にデコードするため、これはプログラムに対して透過的です。

同じ名前の Cookie を複数設定したい場合は、配列を使用します。

コードは次のとおりですコードをコピー

2. Cookieの受信と処理

PHP は Cookie の受信と処理を非常に優れたサポートを備えており、完全に自動であり、FORM 変数と同じ原理を持っています。

たとえば、MyCookier という名前の Cookie を設定すると、PHP は WEB サーバーが受信した HTTP ヘッダーからそれを自動的に分析し、$myCookie という名前の通常の変数と同様の変数を形成します。この変数の値が Cookie の値になります。配列にも同じことが当てはまります。もう 1 つの方法は、PHP のグローバル変数 $HTTP_COOKIE_VARS 配列を参照することです。

例は次のとおりです: (これらが前のページで設定されており、まだ有効であると仮定します)

SetCookie(“CookieArray[]”, “値 1”);

SetCookie(“CookieArray[]”, “値 2”);

または

SetCookie(“CookieArray[0]”, “値 1”);

SetCookie(“CookieArray[1]”, “値 2”);

コードは次のとおりです コードをコピー

$MyCookie をエコー;

エコー $CookieArray[0];

エコーカウント($CookieArray

)

Cookieの値を取得するには?
PHP の $_COOKIE 変数は、Cookie の値を取得するために使用されます。

以下の例では、「user」という名前の Cookie の値を取得し、ページに表示します。

コードは次のとおりですコードをコピー
// クッキーを印刷します
echo $_COOKIE["ユーザー"];

// すべての Cookie を表示する方法

print_r($_COOKIE);
?>

以下の例では、isset() 関数を使用して Cookie が設定されているかどうかを確認します。

コードは次のとおりですCookieを削除するには?
コードをコピー


if (isset($_COOKIE["user"]))

echo "ようこそ " . $_COOKIE["user"] "!
";
それ以外
echo "ようこそゲスト!
";
?>


Cookie を削除する場合は、有効期限を過去の時点に変更する必要があります。


削除の例:

コードは次のとおりです // 有効期限を 1 時間前に設定します

setcookie("ユーザー", "", time()-3600);
?>

コードをコピー

ユーザーのログイン時間と有効期限のタイムコードを設定するためのphp cookie

コードは次のとおりです関数loginCookie($uid,$name,$group,$ip,$time)

詳細については、http://www.bKjia.c0m/phper/18/1b5df18d38cfea1a63282c367f6cdf63.htmをご確認ください。

コードをコピー
{

グローバル $site_domain,$login_key;

$domain = (substr($site_domain,0,4) == "www.") substr($site_domain,3) : ".".$site_domain;

$secure = Xxtea::encrypt($uid."|".$name."|".$group."|".$ip,$login_key);

setcookie("userId",$uid,$time+86400,"/",$domain);

setcookie("userName",$name,$time+86400,"/",$domain);

setcookie("userGroup",$group,$time+86400,"/",$domain);

setcookie("userSecure",$secure,$time+86400,"/",$domain);
}

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

tru​​ehttp://www.bkjia.com/PHPjc/628980.html技術記事 Cookie はあらゆるプログラム開発に存在します。Cookie の設定 (SetCookie) とログインの削除 ($_COOKIE) について説明します。 1. Cookie を設定する PHP は SetCookie 関数を使用して Cookie を設定します...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

CakePHP のロギング CakePHP のロギング Sep 10, 2024 pm 05:26 PM

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

CakePHP クイックガイド CakePHP クイックガイド Sep 10, 2024 pm 05:27 PM

CakePHP はオープンソースの MVC フレームワークです。これにより、アプリケーションの開発、展開、保守がはるかに簡単になります。 CakePHP には、最も一般的なタスクの過負荷を軽減するためのライブラリが多数あります。

See all articles