Maison >développement back-end >tutoriel php >Explication détaillée de la façon dont ThinkPHP génère et vérifie les codes de vérification

Explication détaillée de la façon dont ThinkPHP génère et vérifie les codes de vérification

*文
*文original
2018-01-03 10:30:592234parcourir

Comment ThinkPHP génère-t-il et vérifie-t-il les codes de vérification ? Cet article présente principalement en détail la fonction de génération et de vérification des codes de vérification dans ThinkPHP. Il a une certaine valeur de référence et les amis intéressés peuvent s'y référer. J'espère que cela aide tout le monde.

Utilisez ThinkPHP pour implémenter la fonction de génération/vérification de codes de vérification pour votre référence. Le contenu spécifique est le suivant

Comprenez d'abord la classe parent Verity.class.php (ThinkPHP/. Library/Think/Verity .class.php)

1 : check() Vérifiez si le code de vérification est correct

2 : Entry() Affichez le code de vérification et enregistrez la valeur de la vérification code dans la session

3:authcode() code de vérification crypté (cette méthode est appelée dans la méthode check())

ContrôleurGénérer le code de vérificationCode :

//验证码
 function verifyImg(){

  //验证码配置
  $cfg = array(
   'imageH' => 30, // 验证码图片高度
   'imageW' => 100, // 验证码图片宽度
   'fontSize' => 15, // 验证码字体大小(px)
   'length' => 4, // 验证码位数
   'fontttf' => '4.ttf', // 验证码字体,不设置随机获取
  );

  //实例化Verify类 自动调用构造函数,把$cfg信息传给$config
  $verify = new Verify($cfg);
  $verify -> entry(); //输出验证码
 }

Afficher le code de vérification à la réception

<!--分组/控制器/方法--> 
<img src="<{$smarty.const.__CONTROLLER__}>/verifyImg" onclick = "this.src=&#39;<{$smarty.const.__CONTROLLER__}>/verifyImg/&#39;+Math.random()" alt="验证码" />

ContrôleurVérifier le code de vérification (prendre la connexion comme exemple)

//登陆
 function login(){
  
  //两个逻辑:展示,收集
  if (!empty($_POST)) {

   $verify = new Verify();

   //接收验证码
   $captcha = $_POST[&#39;captcha&#39;];
   //check()方法校验验证码
   if ($verify->check($captcha)) {
    echo "正确";
   }else{
    echo "错误";
   }
  }

  //调用view视图
  $this->display();
 }

Recommandations associées :

Explication détaillée de la façon dont PHP génère un texte chiffré sensible au temps

Explication détaillée de la façon dont PHP génère un texte chiffré sensible au temps Convertir les symboles pleine chasse en demi-chasse

Explication détaillée de la façon d'obtenir la durée des fichiers audio en PHP

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