PHP+Ajax异步通讯实现用户名邮箱验证是否已注册( 2种方法实现)


Posted in PHP onDecember 28, 2011

前 言
直接上代码有点不厚道、于是按照天朝传统,整段描述吧。。。。(本人语言表达能力有限,大家忍着看)
功 能
在网站注册用户时使用,主要为了无刷新异步验证用户输入的用户名或者Email是否已注册。
这功能大家肯定见过,大多数网站都有的,我一直对这个功能很感兴趣,所以这几天研究了下 jQuery + Ajax
整了一个功能不算完善,但足以应付普通使用的代码 (更牛的功能大家自己去发掘)
文 件 说 明
reg.php //为注册页面
check_user.php //为用户验证页面 (GET,POST方式任选)
jquery-1.7.1.js //为jQuery文件 下载地址:http://code.jquery.com/jquery-1.7.1.js (右键另存为即可)
代码示例
reg.php 注册页面(内含2种方式,请任选一种)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<title>PHP+Ajax 异步通讯注册验证</title> 
<script type="text/javascript" src="jquery-1.7.1.js"></script> <!--千万别忘记引用jQuery文件,否则无法执行--> 
<script type="text/javascript"> 
$(function(){ 
//方式一 jQuery(普通应用时推荐,简单易用) 
$("#user").blur(function(){ //文本框鼠标焦点消失事件 
$.get("check_user.php?user="+$("#user").val(),null,function(data) //此处get方式 可换为post方式按需求调整,其他无需修改使用方式一样 
{ 
$("#chk").html(data); //向ID为chk的元素内添加html代码 
}); 
}) 
//方式二 aJax方式 (比较复杂,如无特殊需求推荐使用方式一) 
$("#user").blur(function(){ 
$.ajax({ 
url:"check_user.php", //请求验证页面 
type:"GET", //请求方式 可换为post 注意验证页面接收方式 
data:"user="+$("#user").val(), //取得表文本框数据,作为提交数据 注意前面的 user 此处格式 key=value 其他方式请参考ajax手册 
success: function(data) 
{ //请求成功时执行操作 
$("#chk").html(data); //向ID为chk的元素内添加html代码 
} 
}); 
}) 
}) 
</script> 
</head> 
<body> 
<form id="reg" action="" method="post"> 
用户名:<input id="user" type="text" /> <span id="chk"></span> 
</form> 
</body> 
</html>

check_user.php 异步通信页面 代码如下:
<?php 
header("Content-type:text/html;charset=gb2312"); 
//GET方式获取数据(取决于异步提交时提交方式) 
if($_GET['user']) 
{ 
$user=$_GET['user']; 
//此处可进行数据库匹配,本次省略直接判断 
if($user=="admin") 
echo "<font color=red>用户名已被注册!</font>"; 
else 
echo "<font color=red>用户名可以使用</font>"; 
}else{} 
//POST方式获取数据(取决于异步提交时提交方式) 
if($_POST['user']) 
{ 
$user=$_POST['user']; 
//此处可进行数据库匹配,本次省略直接判断 
if($user=="admin") 
echo "<font color=red>用户名已被注册!</font>"; 
else 
echo "<font color=red>用户名可以使用</font>"; 
}else{} 
?>

上面的2种方式分别又存在 post 和 get 两种方式,所以可以说有4种方式选择,应该可以满足普通应用了。
另外关于Ajax 内其他参数例如:请求数据类型,ajax开始操作等等事件。请参考ajax手册。这里不做阐述,较为复杂推荐使用第一种方式。
配 图:

PHP+Ajax异步通讯实现用户名邮箱验证是否已注册( 2种方法实现)      PHP+Ajax异步通讯实现用户名邮箱验证是否已注册( 2种方法实现)

PHP 相关文章推荐
解决phpmyadmin中文乱码问题。。。
Jan 18 PHP
PHP中source #N问题的解决方法
Jan 27 PHP
php文件服务实现虚拟挂载其他目录示例
Apr 17 PHP
phpnow php探针环境检测代码
Nov 04 PHP
PHP判断网络文件是否存在的方法
Mar 12 PHP
浅谈php提交form表单
Jul 01 PHP
[原创]ThinkPHP让../Public在模板不解析(直接输出)的方法
Oct 09 PHP
PHP实现数据库的增删查改功能及完整代码
Apr 18 PHP
浅谈Laravel核心解读之Console内核
Dec 02 PHP
Laravel5.5 动态切换多语言的操作方式
Oct 25 PHP
laravel框架模型和数据库基础操作实例详解
Jan 25 PHP
YII2框架中添加自定义模块的方法实例分析
Mar 18 PHP
shopex主机报错误请求解决方案(No such file or directory)
Dec 27 #PHP
PHP写UltraEdit插件脚本实现方法
Dec 26 #PHP
url decode problem 解决方法
Dec 26 #PHP
最新用php获取谷歌PR值算法,附上php查询PR值代码示例
Dec 25 #PHP
匹配csdn用户数据库与官方用户的重合度并将重叠部分的用户筛选出来
Dec 25 #PHP
php操作JSON格式数据的实现代码
Dec 24 #PHP
php文件怎么打开 如何执行php文件
Dec 21 #PHP
You might like
长波知识介绍
2021/03/01 无线电
Mysql数据库操作类( 1127版,提供源码下载 )
2010/12/02 PHP
PHP数据类型之布尔型的介绍
2013/04/28 PHP
php使用类继承解决代码重复的问题
2015/02/11 PHP
php使用str_shuffle()函数生成随机字符串的方法分析
2017/02/17 PHP
JS日历 推荐
2006/12/03 Javascript
侧栏跟随滚动的简单实现代码
2013/03/18 Javascript
JavaScript中push(),join() 函数 实例详解
2016/09/06 Javascript
AngularJS的Filter的示例详解
2017/03/07 Javascript
微信小程序多列选择器range-key使用详解
2020/03/30 Javascript
JSON创建键值对(key是中文或者数字)方式详解
2017/08/24 Javascript
vue 使用鼠标滚动加载数据的例子
2019/10/31 Javascript
深入了解Vue.js 混入(mixins)
2020/07/23 Javascript
[01:38]完美世界高校联赛决赛花絮
2018/12/02 DOTA
python中__call__方法示例分析
2014/10/11 Python
Python中二维列表如何获取子区域元素的组成
2017/01/19 Python
老生常谈Python进阶之装饰器
2017/05/11 Python
Python将一个CSV文件里的数据追加到另一个CSV文件的方法
2018/07/04 Python
Python datetime和unix时间戳之间相互转换的讲解
2019/04/01 Python
Pandas+Matplotlib 箱式图异常值分析示例
2019/12/09 Python
Python中如何添加自定义模块
2020/06/09 Python
详解pytorch tensor和ndarray转换相关总结
2020/09/03 Python
基于 HTML5 的 WebGL 3D 版俄罗斯方块的示例代码
2018/05/28 HTML / CSS
SOA的常见陷阱或者误解是什么
2014/10/05 面试题
《富饶的西沙群岛》教学反思
2014/04/09 职场文书
网页美工求职信范文
2014/04/17 职场文书
一帮一活动总结
2014/05/08 职场文书
缅怀革命先烈演讲稿
2014/05/14 职场文书
奉献演讲稿范文
2014/05/21 职场文书
在职员工证明书
2014/09/19 职场文书
安徽导游词
2015/02/12 职场文书
2015年机关党建工作总结
2015/05/22 职场文书
逃出克隆岛观后感
2015/06/09 职场文书
安全生产感想
2015/08/07 职场文书
退休劳动合同怎么写?
2019/10/25 职场文书
HTML+VUE分页实现炫酷物联网大屏功能
2021/05/27 Vue.js