Wenn wir uns auf der Website registrieren, müssen wir zunächst eine Nicht-Aktualisierungsüberprüfung durchführen. In diesem Artikel wird hauptsächlich die Echtzeitüberprüfungsfunktion für die PHP + Ajax-Registrierung vorgestellt
Die Echtzeit-Verifizierungstechnologie von Ajax ist sehr ausgereift. Wenn auf einigen standardisierten Websites eine Vorlage für die Registrierungsüberprüfung vorhanden ist, muss Ajax auf jeden Fall überprüft werden, was sich positiv auf die Benutzerregistrierungserfahrung auswirkt . Im Vergleich zu einem Verifizierungsmodus, der ohne rechtzeitige Aktualisierung nicht mit dem Hintergrund verbunden werden kann und zum Aktualisieren zurückkehren muss, was für die Benutzererfahrung sehr unfreundlich ist.
Der Ajax-Modus ist eine Voraussetzung für fast alle Site-Anwendungen. Als Front-End-Verifizierung ohne Aktualisierung kann Ajax in Kombination mit allen Back-End-Sprachen wie asp+ajax verwendet werden. php+ajax,.net+ajax Warten Sie auf die Kombination. Die Haupterklärung hier ist die Registrierungsüberprüfung von php+ajax.
Die folgende Überprüfung ist ein vollständiges Beispiel. Wenn wir uns auf der Website registrieren und den Benutzernamen eingeben, müssen wir zunächst eine Überprüfung ohne Aktualisierung durchführen und überprüfen, ob Daten mit demselben Namen in der Hintergrunddatenbank vorhanden sind. Wenn es vorhanden ist, wird keine Aktualisierungsaufforderung angezeigt, die darauf hinweist, dass der Benutzername belegt ist. Hier handelt es sich um insgesamt vier Dateien.
ajax.js: Die Kerndatei der Ajax-Technologie. Sie wird hauptsächlich verwendet, um von Zeit zu Zeit Überprüfungsaufforderungen anzuzeigen. Diese Datei muss normalerweise nicht geändert werden, sondern nur vom Frontend aufgerufen werden.
var xmlHttp function showHint(str) { if (str.length==0) { document.getElementById("txtHint").innerHTML="" return } xmlHttp=GetXmlHttpObject() if (xmlHttp==null) { alert ("Browser does not support HTTP Request") return } xmlHttp.onreadystatechange=stateChanged var geturl="conn.php?q="+str //sid是增加一个随机数 防止页面启用缓存技术· geturl=geturl+"&sid="+Math.random() geturl=encodeURI(geturl); geturl=encodeURI(geturl); xmlHttp.open("GET",geturl,true) xmlHttp.send(null) } function stateChanged() { if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") { document.getElementById("txtHint").innerHTML=xmlHttp.responseText } } function GetXmlHttpObject() { var xmlHttp=null; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e) { // Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } } return xmlHttp; }
conn.php:Dies ist die Konfigurationsdatei der Website. Sie müssen Ihren lokalen MySQL-Benutzernamen konfigurieren Sie müssen die Verbindung zwischen PHP und der Datenbank konfigurieren. Darüber hinaus müssen die empfangenen Daten für die Echtzeitanzeige verarbeitet werden verifiziert, führen Sie hier einfach eine Mehrfachabnahme und Verifizierung durch.
<?php $q=$_GET["q"]; $q = urldecode($q); if (strlen($q) > 0) { $conn = @mysql_connect("localhost","root","1010") or die ("MySql连接错误"); mysql_select_db("xin",$conn); mysql_query("set names 'utf8'"); $sql = "SELECT username FROM message WHERE username = '$q'"; $query = mysql_query($sql); @$row = mysql_fetch_array($query); if(!empty($row['username'])) { $response = "<font color=red>已经被注册!</font>"; }else { $response = "<font color=blue>恭喜!可以注册!</font>"; } echo $response; } ?>
index.html:Diese Datei ist relativ einfacher. Sie heißt The Die Verarbeitung der Datei von ajax.js sendet die Datei, die zur Überprüfung ohne Aktualisierung an conn.php übermittelt werden soll, und den Hintergrund für die Verbindung.
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script src="ajax.js"></script> </head> <body bgcolor="#999999"> <center> <form> <table> <tr> <td>用户名:</td> <td><input type="text" id="txt1" onKeyUp="showHint(this.value)"></td> </tr> <tr align="center"> <td colspan="2"><span id="txtHint"></span></td> </tr> </table> </form> </center> </body> </html>
Library.txt:Dies ist die SQL-Datenbankdatei.
DROP DATABASE IF EXISTS `xin`; CREATE DATABASE `xin` /*!40100 DEFAULT CHARACTER SET utf8 */; USE `xin`; CREATE TABLE `message` ( `id` int(11) NOT NULL auto_increment, `username` varchar(20) default NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
Speichern Sie diese Dateien im Stammverzeichnis, in dem Sie PHP-Dateien ausführen können. Das Folgende ist Paket Sehen Sie sich den gesamten Satz heruntergeladener Dateien an und versuchen Sie, ihn an das gewünschte Registrierungsmodul anzupassen, z. B. durch Hinzufügen eines Passworts, eines Namens usw.
Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.
Verwandte Empfehlungen:
phpDetaillierte Erläuterung von Beispielen für preg_match-Matching-Sprachen in verschiedenen Ländern
Das obige ist der detaillierte Inhalt vonSo implementieren Sie eine Echtzeit-Registrierungsüberprüfungsfunktion mit PHP+Ajax. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!