Detaillierte Erläuterung des Funktionscodes des Website-Bestätigungscodes mit PHP

黄舟
Freigeben: 2023-03-06 12:28:01
Original
2359 Leute haben es durchsucht

In diesem Artikel wird hauptsächlich die Methode zur Verwendung von PHP zur Implementierung der Website-Bestätigungscode-Funktion vorgestellt. Es hat einen sehr guten Referenzwert, schauen wir es uns mit dem Editor unten an

Bestätigungscode ist eine Sicherheitsmaßnahme, die häufig auf Websites verwendet wird, und es ist auch eine Fähigkeit, die für neue Webmaster schwer zu beherrschen ist. Hier stelle ich Ihnen eine einfache und effektive Methode zur Implementierung von Verifizierungscodes vor.

Bevor wir beginnen

Bevor wir offiziell beginnen, müssen wir die GD2-Grafikbibliotheksunterstützung von PHP aktivieren (suchen Sie nach „php_gd2.dll“ in php.ini und finden Sie „; extension=php_gd2.dll“ und entfernen Sie das Semikolon am Satzanfang.

Sie können sich beziehen auf: So öffnen Sie die gd2-Bibliothek von PHP

Kern: img.php

Diese Seite generiert einen Bestätigungscode und schreibt der richtige Wert Sitzung eingeben

Ein zufälliger 4-stelliger Bestätigungscode

$check=rand(1000,9999); 

wird generiert. Schreiben Sie den Bestätigungscode in die Sitzung

Session_start(); 
$_SESSION["check"] = $check;
Nach dem Login kopieren

Erstellen Sie ein Bild

$im = imagecreate(80,30);

Da der Hintergrund dieses Bildes standardmäßig schwarz ist, müssen wir ihn mit Weiß füllen.

imagefill($im,0,0,ImageColorAllocate($im, 255,255,255));

Verwenden Sie imageline, um zufällig zwei durchgezogene Linien zu zeichnen

$y1=rand(0,30); 
$y2=rand(0,30); 
$y3=rand(0,30); 
$y4=rand(0,30); 
imageline($im,0,$y1,70, $y3,000); 
imageline($im,0,$y2,70, $y4,000);
Nach dem Login kopieren

Text an zufälligen Positionen zeichnen

$strx=rand(3,15); 
$stry=rand(2,15); 
imagestring($img,5,$strx,$stry,substr($check,0,1),ImageColorAllocate($img,34,87,100)); 
$strx+=rand(15,20);
$stry=rand(2,15); 
imagestring($img,5,$strx,$stry,substr($check,1,1),ImageColorAllocate($img,781,117,78)); 
$strx+=rand(15,20);
$stry=rand(2,15); 
imagestring($img,5,$strx,$stry,substr($check,2,1),ImageColorAllocate($img,160,40,40)); 
$strx+=rand(15,20);
$stry=rand(2,15); 
imagestring($img,5,$strx,$stry,substr($check,3,1),ImageColorAllocate($img,25,55,10));
Nach dem Login kopieren

Ausgabebild

Header("Content-type: image/PNG"); 
ImagePNG($img);
Nach dem Login kopieren

endet, das Folgende ist der vollständige Code

Nach dem Login kopieren

Benutzeroberfläche: index.php

Ich denke, jeder weiß, wie es geht, deshalb gebe ich den Code direkt

 <!DOCTYPE html>
<html>
<body>
<form action="action.php" method="post">
<input type="text" name="cikle" placeholder="验证码">
<br>
<img id="cikle" style="-webkit-user-select: none" src="img.php"><input type="submit" value="Submit">
</form> 
</body>
</html>
Nach dem Login kopieren

Der obige Code übergibt den vom Benutzer eingegebenen Wert an „action.php“

Prüfung: action.php

Dieser Schritt zum Vergleichen des Benutzereingabewerts mit dem Wert in der Sitzung

ist gleich, die Ausgabe ist „richtig“

ist nicht gleich, die Ausgabe ist „falsch“

<?php
Session_start(); 
if ($_SERVER["REQUEST_METHOD"] == "POST") {
 if($_SESSION["check"]!=intval($_POST["cikle"])){
 echo "不正确";
 }else{
 echo "正确";
 }
}
Nach dem Login kopieren


Das Obige ist die detaillierte Erklärung des Website-Bestätigungscode-Funktionscodes mit PHP. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn). )!


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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!