Maison  >  Article  >  cadre php  >  Discuter de la mise en œuvre du code de vérification thinkphp

Discuter de la mise en œuvre du code de vérification thinkphp

PHPz
PHPzoriginal
2023-04-17 10:29:44670parcourir

Avec le développement de la technologie Internet, l'application du code de vérification est de plus en plus répandue. Il peut empêcher efficacement les enregistrements malveillants, les commentaires, les robots d'exploration et autres comportements de robots, garantissant ainsi la sécurité et le fonctionnement normal du site Web. Réalisez la fonction du code de vérification, discutons maintenant de la mise en œuvre du code de vérification thinkphp.

1. Le concept et la fonction du code de vérification

Le code de vérification (nom complet en anglais : test de Turing public entièrement automatisé pour distinguer les ordinateurs et les humains) est un test de Turing inversé public entièrement automatique qui distingue automatiquement les programmes informatiques des utilisateurs humains. est une technologie utilisée pour distinguer si un utilisateur est une machine ou un humain. Les codes de vérification sont largement utilisés, notamment pour l'inscription, la connexion, les commentaires, la recherche, le vote, l'exploration et d'autres scénarios, et jouent un rôle essentiel dans la sécurité d'Internet.

2. Étapes de mise en œuvre du code de vérification thinkphp

  1. Installer thinkcaptcha

Tout d'abord, nous devons installer le package d'extension thinkcaptcha dans thinkphp, qui peut être installé via la commande suivante : composer require topthink/think-captcha

  1. Configurer le fichier config.php

Dans le dossier de l'application, recherchez le fichier config.php Après l'avoir ouvert, vous pouvez voir le code suivant :

//验证码
'captcha' => [
    // 验证码字符集合
    'codeSet' => '2345678abcdefhijkmnpqrstuvwxyzABCDEFGHJKLMNPQRTUVWXY',
    // 验证码字体大小(px),根据所需进行设置验证码字体大小
    'fontSize' => 25,
    // 是否画混淆曲线
    'useCurve' => true,
    // 验证码图片高度,根据所需进行设置验证码图片高度
    'imageH' => 50,
    // 验证码图片宽度,根据所需进行设置验证码图片宽度
    'imageW' => 150,
    // 验证码位数,根据所需进行设置验证码位数
    'length' => 4,
    // 验证成功后是否重置
    'reset' => true
]

Selon les besoins, nous pouvons modifier les paramètres qu'il contient pour personnaliser les paramètres. .

  1. Appelez la méthode du code de vérification dans le contrôleur
use think\captcha\Captcha;

class Index
{
   public function verify()
   {
      $config = [
         'codeSet' => '0123456789',
         'useZh'   => false,
         'fontSize'=> 20, 
         'length' => 4,
         'useNoise' => false,
      ]; //验证码配置
      $captcha = new Captcha($config);
      return $captcha->entry(); 
   }
}

Dans le contenu ci-dessus, $config est utilisé pour définir les paramètres du code de vérification, tels que codeSet est le jeu de caractères facultatif, useZh indique s'il faut activer le chinois, fontSize est le taille de la police du code de vérification, la longueur est le nombre de chiffres du code de vérification, useNoise indique si la ligne d'interférence est activée, etc.,

  1. Appelez le code de vérification dans la vue

Dans le formulaire qui doit utiliser le code de vérification, vous pouvez appeler le code de vérification via le code suivant :

<form method="post">
   <input type="text" name="captcha" placeholder="Captcha" class="form-control">
   <?php echo captcha_img(); ?>
</form>

où La méthode captcha_img() est la méthode de sortie du code de vérification fournie avec le package d'extension thinkcaptcha et peut être utilisée pour générer directement le code de vérification généré.

  1. Vérifiez le code de vérification

Enfin, le code de vérification doit être vérifié sur le backend si le code de vérification saisi par l'utilisateur n'est pas cohérent avec le code de vérification généré, la vérification échouera.

use think\captcha\Captcha;

class Index
{
   public function login()
   {
      $captcha = new Captcha();
      if (!$captcha->check(input('code'))) {
         $this->error('验证码错误');
      } else {
         //其他业务逻辑
      }
   }
}

Dans le code ci-dessus, $captcha->check(input('code')) est utilisé pour détecter si le code de vérification saisi par l'utilisateur est cohérent avec le code de vérification généré. S'il est incohérent, une invite s'affichera. surgir.

3. Résumé

Étant donné que le code de vérification est un élément important pour assurer la sécurité du site Web, thinkphp fournit également une fonction de code de vérification riche. Lors du processus de mise en œuvre du code de vérification, vous devez faire attention aux paramètres de configuration. et les méthodes d'appel, et vous devez également inclure le code de vérification. La mise en œuvre du code est combinée avec la logique métier, et les avantages du code de vérification sont intelligemment utilisés pour protéger la sécurité et le développement sain du site Web.

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