Heim > Backend-Entwicklung > PHP-Tutorial > PHP implementiert die Funktion zur Überprüfung des Anmeldebestätigungscodes

PHP implementiert die Funktion zur Überprüfung des Anmeldebestätigungscodes

不言
Freigeben: 2023-03-29 06:14:01
Original
1931 Leute haben es durchsucht

In diesem Artikel wird hauptsächlich die Überprüfungsfunktion des PHP-Verifizierungscodes vorgestellt. Sie wird hauptsächlich durch die Verwendung der SESSION-Funktion in PHP implementiert. Interessierte Freunde können sich darauf beziehen.

Überprüfung des Der Bestätigungscode wird mithilfe der SESSION-Funktion in PHP implementiert.

Deklarieren Sie die Funktion oben session_start(); Sagen Sie dem Server, wofür wir diese Funktion verwenden möchten.

session_start();
Nach dem Login kopieren

Als nächstes verwenden wir den Code zur Implementierung des Verifizierungscodes. Hier verwenden wir als Beispiel englische Zahlencodes.

$image = imagecreatetruecolor(100, 30); //创建一个100×30的画布
$white = imagecolorallocate($image,255,255,255);//白色
imagefill($image,0,0,$white);//覆盖黑色画布
Nach dem Login kopieren

Deklarieren Sie dann eine leere Variable, bevor der Bestätigungscode implementiert wird, um den Bestätigungscode zu speichern.

$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; //这个变量的值与用户输入的值相等

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 ); //销毁图像
Nach dem Login kopieren

Verwenden Sie die POST-Methode, um den Bestätigungscode zu erhalten. Die strtolower-Funktion macht die Groß-/Kleinschreibung des Servers unempfindlich. Dadurch kann die Eingabefehlerquote des Benutzers effektiv reduziert werden.

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();
}
Nach dem Login kopieren

Das Folgende ist der HTML-Seitencode.

<!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>
Nach dem Login kopieren

Verwandte Empfehlungen:

PHP implementiert das Komprimieren mehrerer Dateien in das Zip-Format und deren lokalen Download

PHP implementiert die Funktion zum Generieren eines Datenwörterbuchs

Das obige ist der detaillierte Inhalt vonPHP implementiert die Funktion zur Überprüfung des Anmeldebestätigungscodes. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage