PHP+Ajax实现的检测用户名功能简单示例
时间:2022-07-27
本文章向大家介绍PHP+Ajax实现的检测用户名功能简单示例,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本文实例讲述了PHP+Ajax实现的检测用户名功能。分享给大家供大家参考,具体如下:
一 代码
fun.js:
function chkUsername(username){
if(username==''){ //判断用户名是否为空
alert('请输入用户名!');
}else{
var xmlObj; //定义XMLHttpRequest对象
if(window.ActiveXObject){ //如果是浏览器支持ActiveXObjext则创建ActiveXObject对象
xmlObj = new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){ //如果浏览器支持XMLHttpRequest对象则创建XMLHttpRequest对象
xmlObj = new XMLHttpRequest();
}
xmlObj.onreadystatechange = callBackFun; //指定回调函数
xmlObj.open('GET', 'chk.php?username='+username, true); //使用GET方法调用chk.php并传递username参数的值
xmlObj.send(null); //不发送任何数据,因为数据已经使用请求URL通过GET方法发送
function callBackFun(){ //回调函数
if(xmlObj.readyState == 4 && xmlObj.status == 200){ //如果服务器已经传回信息并没发生错误
if(xmlObj.responseText=='y'){ //如果服务器传回的内容为y,则表示用户名已经被占用
alert('该用户名已被他人使用!');
}else{ //不为y,则表明用户名未被占用
alert('恭喜,该用户未被使用!');
}
}
}
}
}
chk.php:
<?php
require_once 'conn.php'; //包含数据库连接文件
$sql = mysql_query("select id, username from tb_user where username='".trim($_GET['username'])."'", $connID); //执行查询
$result = mysql_fetch_array($sql);
if ($result) { //判断用户名是否存在
echo 'y';
} else {
echo 'n';
}
?
conn.php:
<?php
$host = '127.0.0.1';
$userName = 'root';
$password = 'root';
$connID = mysql_connect($host, $userName, $password);
mysql_select_db('db_database27', $connID);
mysql_query('set names gbk');
?
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.w3.org/1999/xhtml"
<head
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /
<title Ajax检测用户名</title
</head
<script language="javascript" src="js/fun.js" </script
<body
<h2 Ajax检测用户名</h2
<form name="form_register"
用户名:<input type="text" id="username" name="username" size="20" / <input type="button" value="查看用户名是否被占用" onclick="javascript:chkUsername(form_register.username.value)" /
</form
</body
</html
二 运行结果
- keepalived+nginx搭建高可用(注意点)
- 我的WCF之旅(10):如何在WCF进行Exception Handling
- 安装nginx出现的问题
- 18.11 LVS DR模式搭建
- Linux基础(day64)
- 我的WCF之旅(9):如何在WCF中使用tcpTrace来进行Soap Trace
- 物联网设备已沦陷,咖啡机也不能例外
- 我的WCF之旅(13):创建基于MSMQ的Responsive Service
- 开发自己的Data Access Application Block[上篇]
- 18.9/18.10 LVS NAT模式搭建
- 谈谈WCF中的Data Contract (1):Data Contract Overview
- Linux基础(day66)
- 字符串的驻留(String Interning)
- 19.5 忘记Admin密码如何做
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Angular路由跳转时,如何传递信息
- Angular里的购物车页面实现
- CentOS7部署WeADMIN监控主机交换机和URL(无坑版)
- JsonPath实践(一)
- 开源测试服务
- Charles报错Failed to install helper解决方案
- [890]scrapy之pipeline的使用
- Redis的slot迁移工具
- 一文搞懂Flink rocksdb中的数据恢复
- Linux expect用法介绍
- GitHub通过access token来clone代码
- 在.NET Core中使用MongoDB明细教程(1):驱动基础及文档插入
- 探索闭包
- openresty实现接口签名安全认证
- JavaScript空值合并运算符