要實現無刷新頁面我們一般會用到ajax來實現,以前是使用最原始的js ajax驗證現在常用的jquery ajax了只要簡單的一句post即可解決了,下面我們看實例
index.php頁面
代碼如下 復制代碼<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns=http://www.bKjia.c0m>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>php jquery check username ajax檢查帳號唯一性</title>
<link href="../style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"></script>
<script>
$(document).ready(function(){
$('#username').keyup(username_check);
});
function username_check(){
var username = $('#username').val();
if(username == "" || username.length < 4){
$('#username').css('border', '3px #CCC solid');
$('#tick').hide();
}else{
jQuery.ajax({
type: "POST",
url: "check.php",
data: 'username='+ username,
cache: false,
success: function(response){
if(response == 1){
//不可以注冊
$('#username').css('border', '3px #C33 solid');
$('#tick').hide();
$('#cross').fadeIn();
}else{
$('#username').css('border', '3px #090 solid');
$('#cross').hide();
$('#tick').fadeIn();
}
}
});
}
}
</script>
<style>
#username{
padding:3px;
font-size:18px;
border:3px #CCC solid;
}
#tick{display:none}
#cross{display:none}
</style>
</head>
<body>
Username: <input name="username" id="username" type="text" />
<img id="tick" src="tick.png" width="16" height="16"/>
<img id="cross" src="cross.png" width="16" height="16"/>
</body>
</html>
php驗證頁面,此頁面接收到jquery ajax post過來的數據進行驗證並返回值
代碼如下 復制代碼<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_lr = "localhost";
$database_lr = "ordersiliconebracelets";
$username_lr = "root";
$password_lr = "";
$lr = mysql_pconnect($hostname_lr, $username_lr, $password_lr) or trigger_error(mysql_error(),E_USER_ERROR);
mysql_query("set names utf8;");
//if ($lr) {
//echo "非常好,MYSQL連接成功了!";
//} else {
//echo "不好意思,失敗了!";
//}
mysql_select_db($database_lr, $lr);
//
$username = trim(strtolower($_POST['username']));
$username = mysql_escape_string($username);
if (eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$username)) {
//email通過檢查
$query = "SELECT email FROM user WHERE email = '$username' LIMIT 1";
$result = mysql_query( $query );
$num = mysql_num_rows($result);
echo $num;
}
else
{
echo "1";//不能注冊
}
?>