


Imitation webQQ-<1>Email Verification_PHP Tutorial designed by php+js+mysql
Recently I used php+js+mysql to design a course imitating webQQ, and gained a lot. Now I will summarize the key technologies for everyone to learn and communicate.
<1>Email verification
When the user registers, they will enter their email address in the text box. At this time, the onblur and onchange events of the text box are used to use Ajax refresh-free technology to determine whether the email address entered by the user is legal and whether it conflicts with the registered email address.
Js code
[html]
function checkEmail(Email)
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
If(xmlhttp.overrideMimeType)
{//Set MIME category
xmlhttp.overrideMimeType("text/xml");
}
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
var url="checkEmail.php?email="+document.getElementById("email").value; //Go to checkEmail.php for verification
xmlhttp.open("GET",url,true);
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("error1").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.send(null);
}
function checkEmail(Email)
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
If(xmlhttp.overrideMimeType)
{//Set MIME category
xmlhttp.overrideMimeType("text/xml");
}
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
var url="checkEmail.php?email="+document.getElementById("email").value; //Go to checkEmail.php for verification
xmlhttp.open("GET",url,true);
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
Document.getElementById("error1").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.send(null);
}
PHP code
[php]
header('Content-Type:text/html;charset=GB2312'); //Encoding mode setting
include("conn.php");
$email=$_GET["email"];
$len=strlen($email);
if($email==null)
{
echo "*The email cannot be empty!";
}
else
{
If($len>50)
echo "*The email address should not exceed 50 characters!";
}
else
if(eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$ email)) //Use regular expression to verify email in php
$sql="select * from user where email='$email'";
$result = mysql_query($sql);
$num=mysql_num_rows($result);
If($num>0)
echo "*This email address is already in use!";
else
echo "*Email is available!";
else
echo "*This email is not available!";
}
?>
header('Content-Type:text/html;charset=GB2312'); //Encoding mode setting
include("conn.php");
$email=$_GET["email"];
$len=strlen($email);
if($email==null)
{
echo "*The email cannot be empty!";
}
else
{
If($len>50)
{
echo "*The email address should not exceed 50 characters!";
}
else
{
if(eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$ email)) //Use regular expression to verify email in php
{
$sql="select * from user where email='$email'"; //Connect to the database to query to see if the email is used
$result = mysql_query($sql);
$num=mysql_num_rows($result);
If($num>0)
{
echo "*This email address is already in use!";
}
else
{
echo "*Email is available!";
}
}
else
{
echo "*This email address is not available!";
}
}
}
?>
After learning about email verification, I think other verifications should be very simple! (To be continued)
Excerpted from wyzhangchengjin123

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

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

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

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.

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.

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

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: 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

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.

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.

Can. The two exchanges can transfer coins to each other as long as they support the same currency and network. The steps include: 1. Obtain the collection address, 2. Initiate a withdrawal request, 3. Wait for confirmation. Notes: 1. Select the correct transfer network, 2. Check the address carefully, 3. Understand the handling fee, 4. Pay attention to the account time, 5. Confirm that the exchange supports this currency, 6. Pay attention to the minimum withdrawal amount.
