検索
ホームページバックエンド開発PHPの問題PHP で検証コード更新を実装する方法を説明する例

インターネットの急速な発展に伴い、ネットワーク セキュリティの問題はますます重要になっています。ユーザーのプライバシーとデータのセキュリティを保護するために、多くの Web サイトではユーザーのログイン ページまたは登録ページに確認コード機能が追加されます。この検証機能は多くのプログラミング言語で実装されていますが、PHPではどのように検証コードのリフレッシュを実装しているかを紹介します。

1. 認証コードとは

認証コードは、ユーザーが本物のユーザーであるかどうかを判断するために使用される人間と機械の検証技術です。一般的な確認コードには、数字、文字、グラフィックが含まれます。このうち、グラフィック検証コードは比較的一般的な方法で、主にランダムに生成された画像をユーザーに表示し、ユーザーは表示された画像内の内容を識別して入力ボックスに入力できます。

2. PHP で検証コードを更新する方法

PHP では、GD ライブラリを通じて検証コードの更新機能を実装できます。 GD ライブラリは、画像やグラフィックを簡単に作成できる PHP 用の描画ライブラリです。

次に、phpのGDライブラリを利用して検証コード更新機能を実装する方法を紹介します。

  1. まず、GD ライブラリを使用して検証コードを作成する必要があります。
<?php session_start();

//创建画布
$width = 120;
$height = 45;
$img = imagecreate($width, $height);

//设置画布背景色
$bg_color = imagecolorallocate($img, 255, 255, 255);

//设置字体颜色
$text_color = imagecolorallocate($img, 0, 0, 0);

//绘制验证码
$code = "";
$length = 4; //验证码字符数
for ($i = 0; $i < $length; $i++) {
    $rand = rand(0, 9); //生成随机数字
    $code .= $rand; //将随机数字拼接为验证码字符串
    $x = floor($width / $length) * $i + 5; //计算字符x轴坐标
    $y = rand(0, $height - 15); //生成随机y轴坐标
    imagestring($img, 5, $x, $y, $rand, $text_color); //绘制字符
}

//将验证码存入session
$_SESSION[&#39;code&#39;] = $code;

//设置响应头,输出验证码图片
header("Content-type:image/png");
imagepng($img);

//释放资源
imagedestroy($img);
?>
  1. 検証コードを作成した後、ページに検証コードを表示し、検証コードを更新する機能を提供する必要があります。
nbsp;html>


    <meta>
    <title>验证码</title>


    <h2 id="验证码">验证码:</h2>
    <img  src="/static/imghwm/default1.png" data-src="code.php" class="lazy" alt="PHP で検証コード更新を実装する方法を説明する例" >
    <a>刷新</a>
    <script>
        function refreshCode() {
            document.getElementById("code_img").src = "code.php?" + Math.random(); //为验证码url添加随机数实现刷新
        }
    </script>

上記のコードでは、「更新」ボタンをクリックして、refreshCode() 関数を呼び出して検証コードを更新します。その中で、認証コードを更新する効果を実現するために、php ファイルに乱数が追加されます。

3. 概要

PHP の GD ライブラリを使用すると、画像やグラフィックの作成、検証コード機能の実装が簡単に行えます。この記事では、コード例を通じて 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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!