Maison > développement back-end > tutoriel php > Comment implémenter la fonction de vérification du code de vérification de connexion en PHP

Comment implémenter la fonction de vérification du code de vérification de connexion en PHP

墨辰丷
Libérer: 2023-03-26 09:12:01
original
1955 Les gens l'ont consulté

Cet article présente principalement en détail la fonction de vérification du code de vérification de PHP, qui a une certaine valeur de référence. Les amis intéressés peuvent s'y référer

Le code de vérification est vérifié à l'aide de la fonction PHP SESSION.
Déclarez la fonction session_start(); en haut pour indiquer au serveur que nous souhaitons utiliser cette fonction.


session_start();
Copier après la connexion


La prochaine chose que nous utilisons est le code pour implémenter le code de vérification. Ici, nous utilisons les codes numériques anglais comme exemple.


$image = imagecreatetruecolor(100, 30); //创建一个100×30的画布 
$white = imagecolorallocate($image,255,255,255);//白色 
imagefill($image,0,0,$white);//覆盖黑色画布
Copier après la connexion


Déclarez ensuite une variable vide avant que le code de vérification ne soit implémenté pour stocker le code de vérification. Utilisez la méthode POST pour recevoir le code de vérification. La fonction strtolower rend le serveur insensible à la casse. Cela peut réduire efficacement le taux d'erreur de saisie de l'utilisateur.


$session = ""; //空变量 ,存放验证码 
for($i=0;$i<4;$i++){ 
  $size = 6; 
  $x = $i*25+mt_rand(5,10); 
  $y = mt_rand(5,10); 
  $sizi_color = imagecolorallocate($image,mt_rand(80,220),mt_rand(80,220),mt_rand(80,220)); 
  $char = join("",array_merge(range(&#39;a&#39;,&#39;z&#39;),range(&#39;A&#39;,&#39;Z&#39;),range(0,9))); 
  $char = str_shuffle($char); 
  $char = substr($char,0,1); 
  imagestring($image,$size,$x,$y,$char,$sizi_color); 
  $session .= $char ; //把验证码的每一个值赋值给变量 
} 
  $_SESSION[&#39;session&#39;] = $session; //这个变量的值与用户输入的值相等
Copier après la connexion



Ce qui suit est le code de la page HTML.

for($k=0;$k<200;$k++){ 
  $rand_color = imagecolorallocate($image,mt_rand(50,200),mt_rand(50,200),mt_rand(50,200)); 
  imagesetpixel($image,mt_rand(1,99),mt_rand(1,29),$rand_color); 
} 
 
for($n=0;$n<5;$n++){ 
  $line_color = imagecolorallocate($image,mt_rand(80,220),mt_rand(80,220),mt_rand(80,220)); 
  imageline($image,mt_rand(1,99),mt_rand(1,29),mt_rand(1,99),mt_rand(1,29),$line_color); 
} 
 
header(&#39;content-type:image/png&#39;);//设置文件输出格式 
imagepng( $image ); //以png格式输出$image图像 
imagedestroy( $image ); //销毁图像
Copier après la connexion


Recommandations associées :

Comment utiliser yunpian.com pour implémenter la fonction de code de vérification SMS en php

if(isset($_POST[&#39;session&#39;])){ 
  session_start(); 
  if(strtolower($_POST[&#39;session&#39;])==strtolower($_SESSION[&#39;session&#39;])){ 
    echo&#39;<font color="#0000CC">输入正确</form>&#39;; 
  }else{ 
    echo &#39;<font color="#CC0000"><b>输入错误</b></font>&#39;; 
  } 
  exit(); 
}
Copier après la connexion

Classe d'encapsulation du code de vérification php

Explication détaillée des étapes pour implémenter la fonction de code de vérification SMS de Laravel


<!DOCTYPE html> 
<html> 
<head> 
 <meta charset="utf-8"/> 
 <title>确认验证码</title> 
</head> 
<body> 
  <form method="post" action="./tushu.php"> 
  <p>验证码图片:<img id="img" border="1" src="http://localhost//xxx.php" width="100" height="30"></p> 
  <a href="javascript:void(0)" rel="external nofollow" onclick="document.getElementById(&#39;img&#39;).src=&#39;http://localhost//xxx.php&#39;">看不清?换一个</a> 
  <p>请输入图片中的验证码:<input type="text" name="session" value=""/></p> 
  <p><input type="submit" value="提交" style="padding:6px 10px;"></p> 
  </form> 
</body> 
</html>
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal