ホームページ >バックエンド開発 >PHPチュートリアル >PHP コーディングのヒント: 偽造防止検証機能を備えた QR コードを生成するには?

PHP コーディングのヒント: 偽造防止検証機能を備えた QR コードを生成するには?

WBOY
WBOYオリジナル
2023-08-17 14:42:141177ブラウズ

PHP コーディングのヒント: 偽造防止検証機能を備えた QR コードを生成するには?

PHP コーディングのヒント: 偽造防止検証機能を備えた QR コードを生成するには?

電子商取引とインターネットの発展に伴い、QR コードはあらゆる分野でますます広く使用されるようになりました。 QRコードの利用にあたっては、製品の安全性を確保し、偽造を防止するために、QRコードに偽造防止検証機能を付加することが非常に重要です。この記事では、PHPを使用して偽造防止検証機能付きQRコードを生成する方法と、対応するコード例を紹介します。

始める前に、次の必要なツールとライブラリを準備する必要があります:

  1. PHPQRCode: PHPQRCode は、PHP 環境で使用できるオープンソースの PHP QR コード生成ライブラリです。 QRコード画像を生成します。
  2. GD ライブラリ: GD ライブラリは、画像関連の操作を処理するために使用される PHP 用のグラフィック ライブラリです。
  3. データベース: 生成された QR コード情報と、対応する偽造防止検証情報を保存するデータベースが必要です。

次に、偽造防止検証機能を備えたQRコードの生成を正式に開始します。

ステップ 1: PHPQRCode ライブラリをインストールする

まず、PHPQRCode ライブラリをダウンロードしてインストールする必要があります。このライブラリのソース コードは GitHub で見つけて、PHP プロジェクト ディレクトリに解凍できます。

ステップ 2: データベース テーブルを作成する

「qrcode」という名前のデータベースを作成し、そのデータベース内に QR コード情報と偽造防止検証情報を保存するための「qrcode_table」という名前のテーブルを作成します。テーブル構造は次のとおりです。

CREATE TABLE qrcode_table (
    id INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
    code VARCHAR(255) NOT NULL,
    anti_fake_code VARCHAR(255) NOT NULL
);

ステップ 3: QR コードを生成し、情報を保存します

次に、QR コードを生成し、指定された情報をデータベースの中央に保存するための PHP コードを記述する必要があります。 。以下は、QR コードを生成して保存するコード例です。

<?php
// 引入PHPQRCode库
require_once 'phpqrcode/qrlib.php';

// 生成二维码的内容
$content = "http://example.com/product?id=1234"; // 这里是一个示例URL,请替换为你自己的内容

// 生成二维码图片的文件路径
$filename = "qrcodes/qrcode.png"; // 这里是二维码图片的保存路径,请根据你的需要修改

// 生成二维码图片
QRcode::png($content, $filename, QR_ECLEVEL_L, 10);

// 生成防伪验证码
$antiFakeCode = uniqid();

// 将二维码信息和防伪验证码存储到数据库
$con = mysqli_connect("localhost","username","password","qrcode"); // 这里请替换为你自己的数据库连接信息
$query = "INSERT INTO qrcode_table (code, anti_fake_code) VALUES ('$filename', '$antiFakeCode')";
$result = mysqli_query($con, $query);

// 关闭数据库连接
mysqli_close($con);

echo "二维码已生成并存储成功!";
?>

上記のコードは、QR コード画像を生成し、画像のパスと生成された偽造防止検証コードをデータベースに保存します。

ステップ 4: QR コードの信頼性を確認する

最後に、QR コードの信頼性を確認するコードを記述する必要があります。以下は検証コードの例です。

<?php
// 获取用户输入的防伪验证码
$userAntiFakeCode = $_POST['anti_fake_code']; // 这里是一个示例,请根据你的实际情况修改

// 查询数据库中对应的二维码信息
$con = mysqli_connect("localhost","username","password","qrcode"); // 这里请替换为你自己的数据库连接信息
$query = "SELECT code FROM qrcode_table WHERE anti_fake_code = '$userAntiFakeCode'";
$result = mysqli_query($con, $query);

// 判断查询结果
if(mysqli_num_rows($result) > 0) {
    $row = mysqli_fetch_assoc($result);
    echo "该二维码是真品,对应的产品信息为:" . $row['code'];
} else {
    echo "该二维码是伪造品!";
}

// 关闭数据库连接
mysqli_close($con);
?>

上記のコードは、ユーザーが入力した偽造防止検証コードを取得し、データベース内の対応する QR コード情報を照会します。クエリ結果が存在する場合は、QR コードが本物であることを意味し、存在しない場合は偽造品であることを意味します。

以上の手順により、偽造防止検証機能を備えたQRコードの生成に成功し、真正性を検証することができました。ニーズに応じて、コードに適切な変更や最適化を行うことができます。この記事があなたの PHP コーディングの実践に役立つことを願っています。

以上がPHP コーディングのヒント: 偽造防止検証機能を備えた QR コードを生成するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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