


PHP-Schritte zum Implementieren des Verifizierungscodes und des serverseitigen Verifizierungscodes
Dieser Artikel stellt Ihnen die Schritte zum Implementieren des Verifizierungscodes in PHP und den serverseitigen Verifizierungscode vor. Ich hoffe, dass er für Sie hilfreich ist.
Was ist der Bestätigungscode: Der Bestätigungscode ist ein öffentliches Programm, das unterscheidet, ob der Benutzer ein Computer oder ein Mensch ist
Die Erstellung eines Bestätigungscodes erfordert vier Schritte
1 : Basiskarte generieren
2: Verifizierungsinhalt generieren
3: Verifizierungscodeinhalt generieren
4: Verifizierungsinhalt überprüfen
Erster Schritt , der erste Schritt, Basiskarte generieren:
Ziel: Generieren Sie ein Bild der Größe 100*30 über PHP
Methode: imagecreatetruecolor($width,$height);
Hinweis: Verlassen Sie sich auf die GD-Erweiterung
Vor der Ausgabe des Bildes müssen die Header-Informationen dieses Bildes im Voraus ausgegeben werden.-》》Senden Sie den nativen HTTP-Header
Diese Methode gibt ein Schwarz aus Hintergrund standardmäßig
imagecreatetruecolor() Erstellt ein neues Echtfarbenbild, dargestellt durch $image. Später werden viele Parameter verwendet
Was bedeutet es, Bildfüllung zu füllen (Leinwand auswählen, Startposition, Farbe)
Herzlichen Glückwunsch, das Basisbild ist generiert, beginnen wir mit dem Hinzufügen einiger Zutaten
$image = imagecreatetruecolor(100,30)
$bgcolor = imagecolorallocate( $image,255,255,255);
imagefill($image,0,0,$bgcolor)
Schritt 2: Verifizierungsinhalt generierenZiel: Zahlen zufällig generieren (Größe, Startposition, Inhalt, Farbe)
Methode: Erzeugen Sie eine Reihe von Zeichen horizontal durch Schleifen und Bildstring-Funktionen. String (entsprechend der Parameterposition im Bildstring ausfüllen)
Hinweis: Kontrollieren Sie die Schriftgröße, N/n
for($i=0;$<4;i++){
Hier definieren Sie Variablen entsprechend den Parametern im Bildstring und weisen sie zu Werte in Variablen
imagestring($image,$fontsze,$x,$y,$fontcontent,$fontcolor)
}
$fontcontent = substr($data,rand(0,strlen($data)),1);Wenn Sie eine Kombination aus Zahlen und Buchstaben wünschen, bedeutet die substr-Methode, einen Teilstring der zurückgegebenen Zeichenfolge zurückzugeben Die Zeichenfolge erhält ab jetzt eine Länge von bis zu 1
Der dritte Schritt generiert den Verifizierungscode-Inhalt
Ziel: Interferenzelemente zum Verifizierungscode hinzufügen sind Punkte oder Linien
Methode: imagesetpixel point, imageline-line (Ressourcendatei, Startposition, Farbe)
Hinweise: Interferenzelemente Achten Sie darauf, die Farbe und Menge zu kontrollieren, um den Gast nicht zu überfordern
Schritt 4: Speichern Sie die Verifizierungsinformationen während der Sitzung
Ziel: Auf der Serverseite aufzeichnen, um die Verifizierung zu erleichtern, nachdem der Benutzer den Verifizierungscode eingegeben hat
Methode: session_start()
Hinweis: session_start() muss am Anfang des Skripts stehen
Bei mehreren Diensten sollte eine zentrale Verwaltung der Sitzungsverwaltung in Betracht gezogen werden
imagepng Geben Sie das Bild aus an den Browser oder eine Datei im PNG-Format
imagedestroy Zerstöre das Bild Gute Angewohnheit
Bei diesen Methoden werden viele Ressourcen verwendet, das heißt, jede Methode erfordert die $image-Leinwand
<php? $image = imagecreatetruecolor( 100,30); $bgcolor = imagecolorallocate($image,255,255,255); imagefill($image,0,0,$bgcolor); // for($i=0;$i<4;$i++){ // $fontsize = 6; // $fontcolor = imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120)); // $fontcontent = rand(0,9); // $x = ($i*100/4)+rand(5,10); // $y = rand(5,10); // imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor ); // } $captch_code= ''; for($i=0 ;$i<4;$i++){ $fontsize = 6; $fontcolor = imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120)); $data = 'abcdefhijkimnpqrstuvwxy345678'; $fontcontent = substr($data,rand(0,strlen($data)),1); $captch_code.=$fontcontent; $x = ($i*100/4)+rand(5,10); $y = rand(5,10); imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor ); } $SESSION['authcode']=$captch_code; for($i=0;$i<200;$i++){ $pointcolor = imagecolorallocate($image,rand(50,200),rand(50,200),rand(50,200)); imagesetpixel($image,rand(1,99),rand(1,99),$pointcolor); } for($i=0;$i<3;$i++){ $linecolor = imagecolorallocate($image,rand(80,220),rand(80,220),rand(80,220)); imageline($image,rand(1,99),rand(1,99),rand(1,99),rand(1,99),$pointcolor); } header('content-type: image/png'); imagepng( $image); //end; imagedestroy( $iamge); ?>
Das ist alles für die Erstellung des Verifizierungscodes. Der nächste Schritt besteht darin, die Verifizierung auf der Serverseite durchzuführen
src="captcha-2.php?r=<?php echo rand();?>" 对于这个r 找了资料,没什么大用
Er verwendet hier auch t, also r ah t ah
In Anbetracht des Falls wird hier strtolower() verwendet, um alle vom Benutzer eingegebenen Großbuchstaben in Kleinbuchstaben umzuwandeln
<?php if(isset($_REQUEST['code'])) { session_start(); if (strtolower($_REQUEST['code'])==$_SESSION['code']) { header('Content-type: text/html; charset=UTF8'); echo '<h1 color="#0000CC">输入正确</h1>'; } else{ header('Content-type: text/html; charset=UTF8'); echo '<h1 color="#CC0000"><b>输入错误</b></h1>'; } exit(); } ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title>确认验证</title> </head> <body> <form method="post" action="form.php"> <p>验证码图片:<img border="1" src="captcha-2.php?r=<?php echo rand();?>" width="100" height="30"> </p> <p>请输入图片的内容:<input type="text" name="code" value=""/></p> <p><input type="submit" value="提交" style="padding:6px 20px;"></p> </form> </body> </html>
Empfohlene verwandte Artikel:
So verwenden Sie PHP, konvertiert den Inhalt der TXT-Datei in ein Array und erhält den angegebenen Inhalt anhand der Zeilennummer (Beispiel) Wie verwendet PHP Längen- und Breitengrade, um den Abstand zwischen zu berechnen? zwei Punkte (reiner Code) Codebeispiel zum Löschen eines Verzeichnisses und aller Dateien im Verzeichnis in PHPDas obige ist der detaillierte Inhalt vonPHP-Schritte zum Implementieren des Verifizierungscodes und des serverseitigen Verifizierungscodes. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Alipay PHP ...

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Die Hijacking der Sitzung kann in den folgenden Schritten erreicht werden: 1. Erhalten Sie die Sitzungs -ID, 2. Verwenden Sie die Sitzungs -ID, 3. Halten Sie die Sitzung aktiv. Zu den Methoden zur Verhinderung der Sitzung der Sitzung in PHP gehören: 1. Verwenden Sie die Funktion Session_regenerate_id (), um die Sitzungs -ID zu regenerieren. 2. Store -Sitzungsdaten über die Datenbank, 3. Stellen Sie sicher, dass alle Sitzungsdaten über HTTPS übertragen werden.

Die Anwendung des soliden Prinzips in der PHP -Entwicklung umfasst: 1. Prinzip der Einzelverantwortung (SRP): Jede Klasse ist nur für eine Funktion verantwortlich. 2. Open and Close Principle (OCP): Änderungen werden eher durch Erweiterung als durch Modifikation erreicht. 3.. Lischs Substitutionsprinzip (LSP): Unterklassen können Basisklassen ersetzen, ohne die Programmgenauigkeit zu beeinträchtigen. 4. Schnittstellen-Isolationsprinzip (ISP): Verwenden Sie feinkörnige Schnittstellen, um Abhängigkeiten und nicht verwendete Methoden zu vermeiden. 5. Abhängigkeitsinversionsprinzip (DIP): Hoch- und niedrige Module beruhen auf der Abstraktion und werden durch Abhängigkeitsinjektion implementiert.

Wie debugge ich den CLI -Modus in PhpStorm? Bei der Entwicklung mit PHPSTORM müssen wir manchmal den PHP im CLI -Modus (COMS -Zeilenschnittstellen) debuggen ...

So setzen Sie die Berechtigungen von Unixsocket automatisch nach dem Neustart des Systems. Jedes Mal, wenn das System neu startet, müssen wir den folgenden Befehl ausführen, um die Berechtigungen von Unixsocket: sudo ...

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Senden von JSON -Daten mithilfe der Curl -Bibliothek von PHP in der PHP -Entwicklung müssen häufig mit externen APIs interagieren. Eine der gängigen Möglichkeiten besteht darin, die Curl Library zu verwenden, um Post � ...
