ホームページ バックエンド開発 PHPチュートリアル PHP 関数を使用して、ユーザー登録およびログイン用の検証コードを生成および検証するにはどうすればよいですか?

PHP 関数を使用して、ユーザー登録およびログイン用の検証コードを生成および検証するにはどうすればよいですか?

Jul 24, 2023 pm 06:09 PM
PHP関数 ユーザーログイン 検証コードの生成 検証コード ユーザー登録

PHP 関数を使用して、ユーザー登録およびログイン用の検証コードを生成および検証するにはどうすればよいですか?

Webサイトのユーザー登録ページやログインページでは、一括登録やロボットによる攻撃を防ぐために、通常、認証コード機能を追加する必要があります。この記事では、PHPの関数を使ってユーザー登録やログインのための認証コードを生成・検証する方法を紹介します。

  1. 検証コードの生成

まず、ユーザーが入力するランダムな検証コード画像を生成する必要があります。 PHPでは検証コード画像を簡単に生成できるGDライブラリと画像処理機能を提供しています。

<?php
// 创建一个画布
$image = imagecreatetruecolor(100, 30);

// 设置画布背景色为白色
$bgColor = imagecolorallocate($image, 255, 255, 255);
imagefill($image, 0, 0, $bgColor);

// 随机生成四位数字验证码
$code = rand(1000, 9999);

// 将验证码保存到Session中,用于后续验证
session_start();
$_SESSION['code'] = $code;

// 将验证码绘制到画布上
$fontColor = imagecolorallocate($image, 0, 0, 0);
imagestring($image, 5, 25, 8, $code, $fontColor);

// 输出图片
header('Content-Type: image/png');
imagepng($image);

// 清除画布资源
imagedestroy($image);
?>
ログイン後にコピー

上記のコードは、100x30 のキャンバスを作成し、4 桁のランダムなデジタル検証コードを生成し、その検証コードをセッションに保存します。最後に、認証コードをキャンバス上に描画し、PNG 形式で画像を出力します。

  1. 検証コードの検証

ユーザーが登録またはログイン要求を送信するとき、ユーザーが入力した検証コードが生成された検証コードと一致するかどうかを検証する必要があります。 。セッションに保存された確認コードとユーザーが送信した確認コードを比較することで確認できます。

<?php
session_start();

// 获取用户提交的验证码
$enteredCode = $_POST['code'];

// 获取Session中保存的验证码
$generatedCode = $_SESSION['code'];

// 清除Session中保存的验证码
unset($_SESSION['code']);

// 比较用户提交的验证码和Session中保存的验证码
if ($enteredCode == $generatedCode) {
    // 验证码匹配,执行登录或注册逻辑
    // ...
} else {
    // 验证码不匹配,返回错误提示
    echo "验证码错误";
}
?>
ログイン後にコピー

上記のコードは、まずユーザーが送信した認証コードとセッションに保存されている認証コードを取得し、比較します。検証コードが一致する場合は、ログインまたは登録ロジックを実行できます。検証が失敗した場合は、対応するエラー プロンプトが返されます。

上記のコード例を通じて、ユーザー登録ページとログイン ページの検証コード生成と検証関数を実装できます。もちろん、ユーザーエクスペリエンスを向上させるために、認証コードを美しくしたり、クリックして更新する機能を追加したりすることもできます。この記事が、PHP を使用して検証コード関数を実装する開発者にとって役立つことを願っています。

以上がPHP 関数を使用して、ユーザー登録およびログイン用の検証コードを生成および検証するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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)

鉄道12306メールアドレスの登録方法 鉄道12306メールアドレスの登録方法 Apr 30, 2024 am 11:33 AM

Railway 12306 の電子メール アドレスを登録する手順は次のとおりです。 12306 の Web サイトにアクセスし、[登録] をクリックして、電子メール、名前、携帯電話、その他の情報を入力し、パスワードと秘密の質問を設定します。プロンプトに、認証情報用の電子メール認証コードと携帯電話認証コードを入力し、「登録を完了」をクリックします。

Bitget Wallet 取引所に登録できないのはなぜですか? Bitget Wallet 取引所に登録できないのはなぜですか? Sep 06, 2024 pm 03:34 PM

BitgetWallet 取引所に登録できない理由は、アカウント制限、サポートされていない地域、ネットワークの問題、システム メンテナンス、技術的障害などさまざまです。 BitgetWallet 取引所に登録するには、公式 Web サイトにアクセスして情報を入力し、規約に同意して登録を完了し、本人確認を行ってください。

Gate.io Open Sesame 新規ユーザー登録とリチャージのチュートリアル Gate.io Open Sesame 新規ユーザー登録とリチャージのチュートリアル Apr 25, 2024 pm 04:53 PM

Gate.io アカウントの登録とチャージ方法: 1. Gate.io 公式 Web サイトにアクセスし、「登録」をクリックします。 2. 登録方法(メールまたは携帯電話)を選択し、パスワードを設定し、規約に同意します。 3. アカウントにログインし、「リチャージ」をクリックします。 4. リチャージする法定通貨または暗号通貨を選択し、金額を入力し、リチャージ方法を選択します。 5. リチャージアドレスを取得し、外部ウォレットまたは取引所から資金を転送します。

なぜDouyinは2つのアカウントを持っているのですか?携帯電話に2つのTikTokをインストールするにはどうすればよいですか? なぜDouyinは2つのアカウントを持っているのですか?携帯電話に2つのTikTokをインストールするにはどうすればよいですか? May 06, 2024 pm 09:28 PM

デジタル時代において、ソーシャルメディアは人々の生活に不可欠な部分となっています。 Douyin は、中国で最も人気のあるショートビデオ プラットフォームの 1 つとして、多くのユーザーを魅了しています。アカウントを 2 つ登録しているユーザーもいます。では、Douyin はなぜ 2 つのアカウントを持っているのでしょうか?この記事では、この質問に答え、携帯電話に 2 つの Douyin アカウントをインストールする方法を説明します。 1. なぜDouyinは2つのアカウントを持っているのですか?機能の差別化: ユーザーによっては、コンテンツの種類や機能に基づいてアカウントを区別する場合があります。たとえば、あるアカウントは日常生活を共有するために使用され、別のアカウントは専門的なスキルを示すために使用されます。 2. プライバシー保護: 一部のユーザーは、2 つのアカウントを通じてプライバシーを保護し、生活と仕事を分離し、情報漏洩を回避したいと考えています。 3. インタラクションのニーズ: インタラクションのニーズにより、ユーザーによっては 2 つを登録する場合があります。

Douyinのスパークカラー変更ルールの詳しい説明は何ですか?条件に合わせた多彩なスパークカラー Douyinのスパークカラー変更ルールの詳しい説明は何ですか?条件に合わせた多彩なスパークカラー May 04, 2024 am 09:31 AM

ユーザー インタラクションを強化し、ユーザー エクスペリエンスを向上させるために、Douyin プラットフォームは興味深いインタラクティブ メカニズムである Spark を開始しました。ユーザーは、Douyin での一連のアクションを通じてスパークをアクティブ化し、アップグレードすることができます。異なる色は、異なる成果と名誉を表します。 Douyin Spark の色変更ルールを理解すると、ユーザーがより適切に参加して対話し、Douyin によってもたらされるソーシャルな楽しみを楽しむことができます。 1.Douyinのスパークカラー変更ルールの詳しい説明は何ですか? 1. 行動は、いいね、コメント、共有などのユーザーのインタラクティブな行動を活性化し、火花を散らす可能性があります。 2. レベルの向上 ユーザーのインタラクションが増えると、スパークは徐々にアップグレードされ、それに応じて色が変化します。 3. 色の変化 スパークの色の変化は、通常、ユーザーのインタラクション頻度、インタラクションの質、アクティビティへの参加に対する熱意に関連しています。 4. タスクが完了しました

Deepseekの公式ウェブサイトの入り口と最新のプロモーションアクティビティ Deepseekの公式ウェブサイトの入り口と最新のプロモーションアクティビティ Feb 19, 2025 pm 05:15 PM

Deepseekの公式Webサイトは現在、ユーザーにショッピングエクスペリエンスを提供するための複数の割引アクティビティを開始しています。新規ユーザーはサインアップして10ドルのクーポンを取得し、視聴者全員に15%の限定時間割引を享受します。友人は報酬を獲得することもできます。また、買い物時に贈り物を償還するためにポイントを蓄積することができます。イベントの締め切りは違う。

セサミオープンドア公式ウェブサイト取引プラットフォームセサミオープンドア公式ウェブサイト交換登録の入り口 セサミオープンドア公式ウェブサイト取引プラットフォームセサミオープンドア公式ウェブサイト交換登録の入り口 Feb 28, 2025 am 10:57 AM

Gate.io Sesame Openは、Fiat Currency Trading、Currency Trading、Leveraged Trading、Perpetual Contracts、ETFレバレッジドトークン、ウェルスマネジメント、スタートアップの初期公募など、ユーザーにセキュリティ、安定性、オープン性、透明度を提供するなど、世界をリードするブロックチェーンデジタル資産取引プラットフォームです。

トマトの小説でタスクを完了する方法 トマトの小説でタスクを完了する方法 May 03, 2024 am 02:27 AM

トマトノベルズのタスクを完了すると、コインとポイントを獲得できます。 方法には、新規ユーザー登録のタスクを完了することが含まれます。毎日チェックインしてください。割り当てられた小説の章を読みます。指定した小説の章にコメントを残してください。友達を招待して登録してください。ソーシャル プラットフォームで小説を共有します。

See all articles