Heim >Backend-Entwicklung >PHP-Problem >Was tun, wenn der Bestätigungscode in PHP nicht synchron ist?
Der Bestätigungscode in PHP ist nicht synchronisiert, da beim Laden der Seite login.php das Laden des Bildes asynchron mit dem Laden anderer Tags erfolgt, sodass zuerst andere Tag-Informationen und dann das Bild geladen werden.
Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer
Was soll ich tun, wenn der Bestätigungscode nicht synchronisiert ist?
Löst perfekt das Problem, dass die PHP-Verifizierungscode-Sitzung nicht synchron ist.
Jeder Entwickler hat das Gefühl erlebt, von seltsamen Phänomenen gequält zu werden. Ich habe versucht, den Grund zu finden, konnte ihn aber nicht finden, und ich habe versucht, ihn zu lösen, konnte ihn aber nicht finden. Lassen Sie uns als Nächstes über den seltsamen PHP-Bestätigungscode sprechen. .
Lass mich dir zuerst ein Bild geben, ich glaube, du kommst vielleicht auch bekannt vor. .
Sie werden feststellen, dass die beiden Werte tatsächlich unterschiedlich sind. Wie kann man überprüfen, ob sie unterschiedlich sind? ? ? ? ?
Seitdem habe ich den Grund im Internet gefunden: Wenn die Seite die login.php-Seite lädt, erfolgt das Laden des Bildes asynchron mit dem Laden anderer Tags, sodass zuerst andere Tag-Informationen geladen werden und dann der src ( Nein. Die Synchronisierung führt dazu, dass auch der „Bestätigungscode“ nicht synchron ist.
Ich kenne den Grund. Als Neuling weiß ich immer noch nicht, wie ich anfangen soll, nachdem ich die von anderen geschriebenen Lösungen gelesen habe. .
Endlich habe ich durch Zufall die Antwort aus einem Projekt gefunden. .
Eigentlich ist die Lösung ganz einfach, es ist zum Beispiel egal, ob die angezeigten Werte gleich sind oder nicht. .
login.php-Anmeldeseite
<form action="login_check.php" method="post"> 验证码: <input name="checkcode" type="text" /><img src="yan.php" alt="看不清?点击更换" style="max-width:90%" onClick="this.src=this.src+'?'" />//yan.php是生成验证码的页面。 </form>
login_check.php-Verifizierungsseite
<?php session_start();//开启session $checkcode= strtolower($_POST["checkcode"]);//获取验证码文本框的值 echo $checkcode;//输出验证码文本框的值 echo $_SESSION['VerifyCode']//输出yan.php输出的值 ?>
Nach dem Absenden werden Sie überrascht sein, dass ich in login.php denselben Wert eingebe, der zum Generieren des Bestätigungscodes generiert wurde die Ausgabe in login_check.php Die beiden Werte sind bis auf die Groß- und Kleinschreibung die gleichen Buchstaben.
Natürlich können wir das Problem der Groß- und Kleinschreibung lösen.
Trotzdem glaube ich, dass selbst wenn das Problem der Synchronisation gelöst ist
Natürlich weiß ich, dass einige Leute, die am meisten nach Perfektion streben, Ajax verwenden, je nach persönlichen Vorlieben und so weiter, was nicht sehr gut aussieht. Wenn Sie Ajax verwenden, senden Sie es nicht an diese Seite, da es sonst nicht überprüft wird. Es gibt kein Problem bei der asynchronen Überprüfung durch eine externe Datei.
Empfohlenes Lernen: „PHP-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWas tun, wenn der Bestätigungscode in PHP nicht synchron ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!