Home Backend Development PHP Tutorial Ajax real-time verification of whether username/email etc. already exists code packaging_PHP tutorial

Ajax real-time verification of whether username/email etc. already exists code packaging_PHP tutorial

Jul 21, 2016 pm 03:22 PM
ajax code share use real time Pack technology use Mail verify

Today I will share an example of "using Ajax technology to detect whether a username exists".
Principle flow chart of using Ajax technology to detect whether a user name exists:
Ajax real-time verification of whether username/email etc. already exists code packaging_PHP tutorial

Screenshot of final result:


Copy code The code is as follows:

.org/1999/xhtml">


Ajax detection username




Username:





Code explanation :
①The core code to implement this function is in ajax.js. You need to introduce
② to name the form, because later we need to use JS to get the value in the input box
③Add a " to the input box onblur" event, that is, the event is triggered when the "focus" is lost (i.e., the "trigger control" of the flow chart)
Used to put the data sent back from the server Data (i.e. "Username already exists", etc.)

Copy code The code is as follows:
mysql_connect("localhost",'root','');
mysql_select_db('test');
$sql="select * from ajax where name='$_GET[id]'";
$query=mysql_query($sql);
if(is_array(mysql_fetch_array($query))){
echo "Username already exists";
}else{
echo "Username can use ";
}
?>

Code explanation:
Through the open method of ajax, the user input "user name" is passed in through the id (i.e. $_GET[id]). At this time, the specified database table will be queried to check whether the "user name" exists
ajax.js

Copy code The code is as follows:
// JavaScript Document
var XHR; //Definition A global object
function createXHR(){ //First we have to create an XMLHttpRequest object
if(window.ActiveXObject){//Lower version of IE class
XHR=new ActiveXObject('Microsoft.XMLHTTP ');//Before IE monopolized the entire browser market and did not follow W3C standards, so this code came into being. . . But things started to change after IE6
}else if(window.XMLHttpRequest){//Non-IE series browsers, but including IE7 IE8
XHR=new XMLHttpRequest();
}
}
function checkname(){
var username=document.myform.user.value;
createXHR();
XHR.open("GET","checkname.php?id="+username ,true);//true: indicates asynchronous transmission without waiting for the send() method to return the result. This is the core idea of ​​ajax
XHR.onreadystatechange=byhongfei;//When the state changes, call the byhongfei method, We define the content of the method separately
XHR.send(null);
}
function byhongfei(){
if(XHR.readyState == 4){//About the methods in the Ajax engine object and attributes, you can refer to my other blog post: http://www.cnblogs.com/hongfei/archive/2011/11/29/2265377.html
if(XHR.status == 200){
var textHTML=XHR.responseText;
document.getElementById('checkbox').innerHTML=textHTML;
}
}
}


Code explanation:
①First we need to declare an ajax engine object: The market share of IE and other browsers is almost half each, so we have to consider both aspects, IE-->ActiveXObject; other-->XMLHttpRequest. I encapsulated her in a function: createXHR
③The checkname() function we specified in index.html will be triggered when the "focus" is lost. So how do we capture the "username" entered by the user? Here, you can easily capture document.myform.user.value using js (now you know why you named the form and input. This step corresponds to "get the filled content" of the flow chart). Interested bloggers can try it. Type the code (alert(username)) in the line before createXHR() and try popping up the captured username.
④The Ajax engine has several methods and attributes (you can refer to my other blog post: Look at the picture to understand: the difference between ordinary interaction and Ajax interaction). Before using it, we must first call the function craateXHR to create an ajax object
⑤With the ajax object, three methods are essential: open(), onreadystatechange, send().
To send a request to the server, use the open () and send() methods.
The first parameter of the open() method indicates that the transmission is to be done in GET or POST mode. . . . . .
The second parameter of the open() method indicates the URL address to be requested (here we are requesting the checkname.php file), which can be an absolute or relative address
The third parameter of the open() method async Indicates whether to use asynchronous requests, true means it is adopted. In this case, there is no need to wait for the server response through ajax and js, but: ① execute other scripts while waiting for the server response ② process the response when the response is ready. Generally, for some small requests, async=false is also acceptable, but do not write the onreadystatechange function at this time.
onreadystatechange event: This event is triggered when the ajax attribute readyState changes. In this event, when the server response is ready to be processed (that is, when readyState=4 and status=200), we specify what tasks we want the server to do. Here we specify that the results retrieved from the database will be output to id In the span tag of "checkbox".
⑥After querying the database through checkname.php, you will get the query result (that is, the server's response, corresponding to "query database" in the flow chart). At this time, the data is still in the ajax engine. If you need to obtain the query from the server To respond, we need to use the responseText or responseXML attribute of the XMLHttpRequest object, and set the data returned from the server response through the DOM attribute innerHTML to the value of the span tag with id="checkbox"
Note: There is a reason to use ajax to monitor whether the mailbox exists , we can also use ajax to monitor the password strength entered by the user in real time. At this time, we need to change the onblur event to an onfocus event.
Original cnblogs Xiaofei

Source code package download /201112/yuanma/checkname_php.rar

http://www.bkjia.com/PHPjc/324720.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/324720.htmlTechArticleToday I share an example of "using Ajax technology to detect whether a user name exists". Principle flow chart of using Ajax technology to detect whether the user name exists: Screenshot of the final result: Copy the code...
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

What are the Redis memory data types? What are the Redis memory data types? Apr 10, 2025 pm 02:06 PM

Redis provides five core memory data types: String: basic string storage, supporting incremental/decreasing operations. List: Bidirectional linked list, efficient insertion/deletion operation. Set: Unordered set, used for deduplication operations. Hash: Key-value pair storage, suitable for storing structured data. Zset: Ordered set, each element has fractions, and can be sorted by fractions. Choosing the right data type is critical to optimizing performance.

How to simplify email marketing with Composer: DUWA.io's application practices How to simplify email marketing with Composer: DUWA.io's application practices Apr 18, 2025 am 11:27 AM

I'm having a tricky problem when doing a mail marketing campaign: how to efficiently create and send mail in HTML format. The traditional approach is to write code manually and send emails using an SMTP server, but this is not only time consuming, but also error-prone. After trying multiple solutions, I discovered DUWA.io, a simple and easy-to-use RESTAPI that helps me create and send HTML mail quickly. To further simplify the development process, I decided to use Composer to install and manage DUWA.io's PHP library - captaindoe/duwa.

Is the syntax of adding columns in different database systems the same? Is the syntax of adding columns in different database systems the same? Apr 09, 2025 pm 12:51 PM

The syntax for adding columns in different database systems varies greatly, and varies from database to database. For example: MySQL: ALTER TABLE users ADD COLUMN email VARCHAR(255); PostgreSQL: ALTER TABLE users ADD COLUMN email VARCHAR(255) NOT NULL UNIQUE;Oracle: ALTER TABLE users ADD email VARCHAR2(255);SQL Server: ALTER TABLE users ADD email VARCH

How to monitor debian mail server How to monitor debian mail server Apr 12, 2025 pm 10:06 PM

To ensure that your Debian mail server runs stably, an effective monitoring mechanism is required. This article introduces several monitoring methods, including log checking, monitoring tools and alarm system settings. 1. Log monitoring The log files of the Debian mail server are usually located in the /var/log/ directory, such as /var/log/mail.log. Regularly checking these logs can help you identify potential problems in a timely manner. 2. Monitoring tools and script examples The following provides several Bash script examples for monitoring CPU, memory and disk space usage and sending email alarms: 1. CPU usage monitoring: #!/bin/bashTHRESHOLD=80EMAILS="your_emai

Nginx virtual host configuration skills, efficiently manage multiple websites Nginx virtual host configuration skills, efficiently manage multiple websites Apr 13, 2025 pm 10:03 PM

Nginx virtual host configuration: Playing around your server garden Have you ever thought about how one server elegantly serves multiple websites at the same time? The answer is the Nginx virtual host configuration. This article will take you into Nginx virtual host configuration tips, allowing you to efficiently manage your "server garden" and avoid some common pitfalls. After reading, you will be able to easily configure the virtual host, understand the mechanism behind it, and write efficient and stable Nginx configuration files. Basic preparation: Don't forget that before starting your toolbox, you need to make sure that Nginx is installed and have some understanding of the basic Linux commands and configuration file structure. We won't explain how to install Nginx here, assuming you've completed this step. remember

Top 10 Digital Virtual Currency Apps Rankings: Top 10 Digital Currency Exchanges in Currency Circle Trading Top 10 Digital Virtual Currency Apps Rankings: Top 10 Digital Currency Exchanges in Currency Circle Trading Apr 22, 2025 pm 03:00 PM

The top ten digital virtual currency apps are: 1. OKX, 2. Binance, 3. gate.io, 4. Coinbase, 5. Kraken, 6. Huobi, 7. KuCoin, 8. Bitfinex, 9. Bitstamp, 10. Poloniex. These exchanges are selected based on factors such as transaction volume, user experience and security, and all provide a variety of digital currency trading services and an efficient trading experience.

bitget new user registration guide 2025 bitget new user registration guide 2025 Apr 21, 2025 pm 10:09 PM

The steps to register for Bitget in 2025 include: 1. Prepare a valid email or mobile phone number and a stable network; 2. Visit the Bitget official website; 3. Enter the registration page; 4. Select the registration method; 5. Fill in the registration information; 6. Agree to the user agreement; 7. Complete verification; 8. Obtain and fill in the verification code; 9. Complete registration. After registering, it is recommended to log in to the account, perform KYC identity verification, and set up security measures to ensure the security of the account.

How to solve PHP email management problem? It can be done easily using the php-imap/php-imap library! How to solve PHP email management problem? It can be done easily using the php-imap/php-imap library! Apr 17, 2025 pm 09:33 PM

I encountered a tough problem when developing a project that needs to process mail: how to efficiently manage mailboxes, get and delete mail. After trying multiple methods, I found that the php-imap/php-imap library not only solves my problem, but also greatly improves the efficiency and stability of the program.

See all articles