


Développement PHP : Comment implémenter la fonction de code de vérification d'image
Développement PHP : Comment implémenter la fonction de code de vérification d'image
En développement WEB, afin de prévenir les robots ou les attaques malveillantes, il est souvent nécessaire d'utiliser des codes de vérification pour vérifier l'identité de l'utilisateur. Parmi eux, le code de vérification d'image est un type courant de code de vérification, qui peut non seulement identifier efficacement les utilisateurs, mais également améliorer l'expérience utilisateur. Cet article expliquera comment utiliser PHP pour implémenter la fonction de code de vérification d'image et fournira des exemples de code spécifiques.
1. Générer une image de code de vérification
Tout d'abord, nous devons générer une image de code de vérification avec des caractères aléatoires. PHP fournit la bibliothèque GD pour générer facilement des images. Voici un exemple de fonction qui génère une image de code de vérification :
function generateCaptchaImage($length = 4, $width = 120, $height = 40, $font = 'path/to/font.ttf'){ $image = imagecreatetruecolor($width, $height); $bgColor = imagecolorallocate($image, 255, 255, 255); $textColor = imagecolorallocate($image, 0, 0, 0); $code = generateRandomCode($length); // 生成随机验证码 imagefill($image, 0, 0, $bgColor); imagettftext($image, 20, 0, 10, 30, $textColor, $font, $code); // 在图片上写入验证码 // 添加干扰线 for ($i = 0; $i < 5; $i++) { $color = imagecolorallocate($image, rand(0, 255), rand(0, 255), rand(0, 255)); imageline($image, rand(0, $width), rand(0, $height), rand(0, $width), rand(0, $height), $color); } // 输出图像 header('Content-type: image/png'); imagepng($image); imagedestroy($image); return $code; } function generateRandomCode($length = 4){ $characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890'; $code = ''; for ($i = 0; $i < $length; $i++) { $code .= $characters[rand(0, strlen($characters) - 1)]; } return $code; }
La fonction ci-dessus generateCaptchaImage
est utilisée pour générer une image de code de vérification et renvoie la chaîne de code de vérification comme valeur de retour de la fonction. generateCaptchaImage
用于生成验证码图片,并将验证码字符串作为函数返回值。
二、显示验证码图片与验证用户输入
在要显示验证码的页面中,可以通过<img src="/static/imghw/default1.png" data-src="captcha.php" class="lazy" alt="Développement PHP : Comment implémenter la fonction de code de vérification d'image" >
标签来显示验证码图片,并使用session
来保存验证码。
session_start(); $captcha = generateCaptchaImage(); $_SESSION['captcha'] = $captcha;
创建一个验证码输入框和提交按钮:
<form action="verify.php" method="POST"> <img src="/static/imghw/default1.png" data-src="captcha.php" class="lazy" alt="captcha image"> <input type="text" name="captcha" placeholder="请输入验证码"> <button type="submit">提交</button> </form>
验证用户输入的验证码:
session_start(); $captcha = $_SESSION['captcha']; if(isset($_POST['captcha']) && $_POST['captcha'] == $captcha){ // 验证成功 echo "验证码输入正确!"; } else { // 验证失败 echo "验证码输入错误!"; }
三、验证码校验和过期处理
为了增强验证码的安全性,我们还可以添加过期时间和校验码处理。以下是一个增强版的验证码验证示例:
session_start(); if(isset($_POST['captcha']) && isset($_SESSION['captcha'])){ $captcha = $_SESSION['captcha']; $inputCaptcha = $_POST['captcha']; if(time() - $_SESSION['captcha_time'] > 300){ // 验证码过期时间为5分钟 echo "验证码已过期,请重新输入!"; return; } if(strtolower($inputCaptcha) === strtolower($captcha)){ echo "验证码输入正确!"; } else { echo "验证码输入错误!"; } } else{ echo "请输入验证码!"; }
在生成验证码时,将当前时间也保存到$_SESSION
<img alt="Développement PHP : Comment implémenter la fonction de code de vérification d'image" >
et utiliser session< /code> pour enregistrer le code de vérification. <p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>session_start();
$captcha = generateCaptchaImage();
$_SESSION['captcha'] = $captcha;
$_SESSION['captcha_time'] = time();</pre><div class="contentsignin">Copier après la connexion</div></div>Créez une zone de saisie du code de vérification et un bouton d'envoi : <p>rrreee</p>Vérifiez le code de vérification saisi par l'utilisateur : <p>rrreee</p>3. Vérification du code de vérification et traitement de l'expiration🎜🎜Afin d'améliorer la sécurité du code de vérification, nous peut également ajouter un délai d'expiration et un traitement de la somme de contrôle. Ce qui suit est une version améliorée de l'exemple de vérification du code de vérification : 🎜rrreee🎜Lors de la génération du code de vérification, enregistrez l'heure actuelle dans <code>$_SESSION
: 🎜rrreee🎜Le code ci-dessus vérifiera l'heure d'expiration et la vérification. Après avoir vérifié le code, les informations d'invite correspondantes seront affichées. 🎜🎜Résumé : 🎜🎜Grâce aux étapes ci-dessus, nous pouvons utiliser PHP pour implémenter la fonction de code de vérification d'image. Tout d'abord, une image de code de vérification avec des caractères aléatoires est générée et affichée sur la page. Ensuite, le code de vérification saisi par l'utilisateur est comparé au code de vérification enregistré sur le serveur pour déterminer si la saisie est correcte. Dans le même temps, afin d'augmenter la sécurité du code de vérification, vous pouvez définir le délai d'expiration et ajouter le traitement du code de vérification. La mise en œuvre de la fonction de code de vérification peut être utilisée dans des opérations sensibles telles que l'enregistrement et la connexion des utilisateurs pour améliorer la sécurité du système et l'expérience utilisateur. 🎜🎜Remarque : Pour que le code ci-dessus s'exécute normalement, vous devez vous assurer que la bibliothèque GD a été correctement installée. 🎜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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Que dois-je faire si Google Chrome n'affiche pas l'image du code de vérification ? Lors de la connexion à une page Web à l'aide de Google Chrome, un code de vérification est parfois requis. Certains utilisateurs constatent que Google Chrome ne peut pas afficher correctement le contenu de l'image lorsqu'il utilise des codes de vérification d'image. Qu'est-ce qui devrait être fait? L'éditeur ci-dessous vous expliquera comment gérer le code de vérification de Google Chrome qui ne s'affiche pas. J'espère que cela sera utile à tout le monde ! Introduction à la méthode : 1. Entrez dans le logiciel, cliquez sur le bouton « Plus » dans le coin supérieur droit et sélectionnez « Paramètres » dans la liste d'options ci-dessous pour entrer. 2. Après être entré dans la nouvelle interface, cliquez sur l'option « Paramètres de confidentialité et sécurité » sur la gauche. 3. Cliquez ensuite sur « Paramètres du site Web » à droite

Comment utiliser Laravel pour implémenter des fonctions de traitement d'images nécessite des exemples de code spécifiques. De nos jours, avec le développement d'Internet, le traitement d'images est devenu un élément indispensable du développement de sites Web. Laravel est un framework PHP populaire qui nous fournit de nombreux outils pratiques pour traiter les images. Cet article expliquera comment utiliser Laravel pour implémenter des fonctions de traitement d'image et donnera des exemples de code spécifiques. Installer LaravelInterventionImageInterven

Dans le développement Web, nous devons souvent utiliser une technologie de mise en cache pour améliorer les performances du site Web et la vitesse de réponse. Memcache est une technologie de mise en cache populaire qui peut mettre en cache n'importe quel type de données et prend en charge une simultanéité élevée et une haute disponibilité. Cet article explique comment utiliser Memcache dans le développement PHP et fournit des exemples de code spécifiques. 1. Installer Memcache Pour utiliser Memcache, nous devons d'abord installer l'extension Memcache sur le serveur. Dans le système d'exploitation CentOS, vous pouvez utiliser la commande suivante

Utilisez uniapp pour implémenter la fonction de rotation d'image. Dans le développement d'applications mobiles, nous rencontrons souvent des scénarios dans lesquels les images doivent être pivotées. Par exemple, l'angle doit être ajusté après la prise d'une photo, ou un effet similaire à la rotation d'un appareil photo après la prise. une photo est réalisée. Cet article expliquera comment utiliser le framework uniapp pour implémenter la fonction de rotation d'image et fournira des exemples de code spécifiques. uniapp est un framework de développement multiplateforme basé sur Vue.js, qui peut développer et publier simultanément des applications pour plusieurs plateformes telles que iOS, Android et H5. Implémenté dans uniapp

Comment s'inscrire à HotcoinGlobal Exchange : Visitez le site officiel : https://www.hotcoin.global/ Sélectionnez la méthode d'inscription : Email ou numéro de téléphone portable Remplissez les informations d'inscription (e-mail ou numéro de téléphone portable, mot de passe, code de vérification) Accepter aux conditions d'utilisation et obtenez le code de vérification Entrez le code de vérification pour terminer l'inscription

Titre : Développement Node.js : Implémentation de fonctions de gestion des droits des utilisateurs et exemples de code Résumé : À mesure que la complexité des applications et des systèmes Web continue d'augmenter, la gestion des droits des utilisateurs est devenue une fonction importante qui ne peut être ignorée. Cet article présentera comment implémenter les fonctions de gestion des droits des utilisateurs dans le développement Node.js et donnera des exemples de code spécifiques. Introduction : En tant que plateforme de développement efficace et légère, Node.js propose un large éventail de scénarios d'application. Dans le développement de nombreuses applications Node.js, la gestion des droits des utilisateurs est souvent une fonction essentielle.

Comment implémenter le contrôle de version et la collaboration de code dans le développement PHP ? Avec le développement rapide d'Internet et de l'industrie du logiciel, le contrôle de version et la collaboration en matière de code dans le développement de logiciels sont devenus de plus en plus importants. Que vous soyez un développeur indépendant ou une équipe de développement, vous avez besoin d'un système de contrôle de version efficace pour gérer les modifications de code et collaborer. Dans le développement PHP, il existe plusieurs systèmes de contrôle de version couramment utilisés, tels que Git et SVN. Cet article expliquera comment utiliser ces outils pour le contrôle de version et la collaboration de code dans le développement PHP. La première étape est de choisir celui qui vous convient

L'application du principe solide dans le développement de PHP comprend: 1. Principe de responsabilité unique (SRP): Chaque classe n'est responsable d'une seule fonction. 2. Principe ouvert et ferme (OCP): les changements sont réalisés par extension plutôt que par modification. 3. Principe de substitution de Lisch (LSP): les sous-classes peuvent remplacer les classes de base sans affecter la précision du programme. 4. Principe d'isolement d'interface (ISP): utilisez des interfaces à grain fin pour éviter les dépendances et les méthodes inutilisées. 5. Principe d'inversion de dépendance (DIP): les modules élevés et de bas niveau reposent sur l'abstraction et sont mis en œuvre par injection de dépendance.
