Maison >développement back-end >Problème PHP >Comment implémenter la fonction de requête de base de données via le code QR en PHP

Comment implémenter la fonction de requête de base de données via le code QR en PHP

PHPz
PHPzoriginal
2023-04-06 09:14:501203parcourir

Avec la popularité des codes QR, de nombreuses industries ont commencé à les appliquer dans divers scénarios, tels que le suivi logistique, la numérisation de codes pour faire du shopping, etc. Dans le développement Web, nous pouvons utiliser PHP pour écrire du code afin d'implémenter la fonction d'interrogation de la base de données via des codes QR. Ci-dessous, je vais vous présenter comment implémenter cette fonction basée sur PHP.

1. Génération de QRCode

Avant de réaliser la fonction d'interrogation de la base de données par code QR, nous devons d'abord générer le code QR. Ici, je recommande d'utiliser la bibliothèque PHPQRCode pour générer des codes QR. Cette bibliothèque est un générateur de code QR PHP léger qui prend en charge la personnalisation de la taille, de la couleur, de la marge et d'autres paramètres du code QR. On peut installer la bibliothèque de la manière suivante :

composer require endroid/qrcode

Ensuite, on peut générer le QR code. Voici un exemple simple :

require_once 'vendor/autoload.php';
use Endroid\QrCode\QrCode;

$qrcode = new QrCode('https://example.com');
$qrcode->setSize(300);
$qrcode->setMargin(10);
$qrcode->setWriterByName('png');
$qrcode->setEncoding('UTF-8');
$qrcode->setErrorCorrectionLevel(QcCode::LEVEL_MEDIUM);
header('Content-Type: '.$qrcode->getContentType());
echo $qrcode->writeString();

Avec le code ci-dessus, nous pouvons générer un code QR d'une taille de 300 et d'une marge de 10, et le sortir au format png. Nous pouvons accéder à une adresse URL spécifiée en scannant le code QR, puis réaliser la fonction d'interrogation de la base de données via le code QR.

2. Numérisation et décodage du code QR

Lorsque l'utilisateur scanne le code QR, nous devons le décoder en une chaîne. Ici, nous pouvons utiliser la bibliothèque tierce zxing pour scanner et décoder les codes QR. Cette bibliothèque est une bibliothèque Java open source capable de reconnaître différents types de codes, notamment les codes-barres et les codes QR. Voici comment installer la bibliothèque zxing :

composer require jongotlin/zxing-php

Ensuite, nous pouvons scanner et décoder le code QR. Voici un exemple simple :

require_once 'vendor/autoload.php';
use Zxing\QrReader;

$qrcodeReader = new QrReader('qrcode.png');
$text = $qrcodeReader->text();
echo $text;

Dans le code ci-dessus, nous utilisons d'abord la classe QrReader pour lire le contenu de l'image du code QR, puis le produisons sous forme de chaîne. De cette manière, nous pouvons décoder les informations obtenues par l'utilisateur en scannant le code QR afin de pouvoir les utiliser lors de la prochaine opération.

3. Requête de base de données et affichage des résultats

Après avoir obtenu les informations obtenues par l'utilisateur en scannant le code QR, nous pouvons utiliser ces informations pour effectuer une requête de base de données afin d'obtenir les données correspondantes. Ici, nous supposons que notre table de données stocke certaines informations sur le produit, notamment l'identifiant du produit, le nom, le prix, etc.

Voici le code pour la requête de base de données via PHP :

$db = new PDO('mysql:host=localhost;dbname=test;charset=utf8', 'root', 'password');
$stmt = $db->prepare('SELECT * FROM products WHERE id = ?');
$stmt->execute([$productId]);
$product = $stmt->fetch(PDO::FETCH_ASSOC);

Dans le code ci-dessus, nous utilisons d'abord la classe PDO pour établir une connexion avec la base de données, puis interrogeons les informations sur le produit de l'ID spécifié via des instructions de prétraitement. Enfin, nous utilisons la méthode fetch pour obtenir les résultats de la requête.

Grâce aux méthodes ci-dessus, nous pouvons afficher les informations sur le produit demandées aux utilisateurs. Voici un exemple simple :

echo '商品ID:' . $product['id'] . '<br/>';
echo '商品名称:' . $product['name'] . '<br/>';
echo '商品价格:' . $product['price'] . '<br/>';

Grâce au code ci-dessus, nous pouvons afficher les informations sur le produit demandées à l'utilisateur sous forme de texte. Bien entendu, nous pouvons également afficher ces informations de manière plus esthétique, par exemple sur une page Web.

Résumé

Dans cet article, nous avons présenté comment utiliser PHP pour interroger la base de données via des codes QR. En fait, nous pouvons ainsi mettre en œuvre de nombreuses fonctions intéressantes, telles que la requête de produits, la gestion des tickets, etc. Bien entendu, lorsque nous écrivons du code, nous devons également prêter attention à certains problèmes de sécurité, tels que la prévention de l’injection SQL.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn