Ajax验证用户名是否被注册

var xmlHttp;
function createXMLHttpRequest(){ // 创建XMLHttp请求对象
if(window.ActiveXObject){
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){
xmlHttp=new XMLHttpRequest();
}
}
xmlHttp.onreadystatechange=处理方法
xmlHttp:这是XMLHttpRequest对象名称
处理方法:这是自定义的JavaScript方法名称
function startRequest(userName){ // 发送页面请求
createXMLHttpRequest();
xmlHttp.onreadystatechange=handleStateChange; // 指定处理服务器响应的方法
xmlHttp.open("GET","regsiterServlet?userName="+userName,true);
xmlHttp.send(null);
}
<script type="text/javascript">
var xmlHttp;
function createXMLHttpRequest(){ // 创建XMLHttp请求对象
if(window.ActiveXObject){
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){
xmlHttp=new XMLHttpRequest();
}
}
function handleStateChange(){ // 处理应答数据
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
document.getElementById('text').innerHTML=xmlHttp.responseText;
}
}
}
function startRequest(userName){ // 发送页面请求
createXMLHttpRequest();
xmlHttp.onreadystatechange=handleStateChange;
xmlHttp.open("GET","regsiterServlet?userName="+userName,true);
xmlHttp.send(null);
}
</script>
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter(); // 获取应答对象的字符输出流
try {
UserDao dao = new UserDao(); // 创建数据库操作类
String userName = request.getParameter("userName"); // 获取请求对象的用户名参数
if(userName==null||userName.isEmpty()){
// 返回提示信息
out.print("<font color='red'>必须输入用户名</font>");
return;
}
boolean hasUser = dao.hasUser(userName); // 判断数据库是否存在指定用户名
if (hasUser) { // 如果存在重名情况
// 返回已注册信息
out.print("<font color='red'>该用户名已经被注册</font>");
} else { // 否则
// 提示用户可以注册
out.print("<font color='green'>该用户名可以使用</font>");
}
} catch (Exception ex) {
Logger.getLogger(RegisterServlet.class.getName()).log(Level.SEVERE, null, ex);
} finally {
out.close();
}
}
public boolean hasUser(String userName) {
boolean hasUser = false; // 声明检查变量,false代表没有重名用户
Connection conn = getConn(); // 连接数据库
if (conn != null) {
// 定义SQL查询语句
String sql = "SELECT count(*) FROM tb_checkUser where username=?";
try {
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1, userName); // 设置查询语句的参数
ResultSet rs = ps.executeQuery(); // 执行SQL查询
if (rs.next()) {
int count = rs.getInt(1); // 获取同名用户数量
if (count > 0) { // 如果同名用户数量大于0
hasUser = true; // 设置检查变量为true,代表用户重名
}
}
rs.close(); // 是否资源
ps.close();
conn.close();
} catch (SQLException ex) {
Logger.getLogger(UserDao.class.getName()).log(Level.SEVERE, null, ex);
}
}
return hasUser;
}

Ajax验证用户名是否被注册的更多相关文章

  1. ajax验证用户名是否被注册 ; ajax提交form表单

    register.html 文件代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" &quo ...

  2. 《ajax学习》之ajax+JavaScript事件验证用户名是否可注册

    当用户注册时,服务器数据库需要对用户输入的用户信息(以用户名为例子)进行验证,在不刷新页面的情况下又需要页面和服务器进行数据请求,最好的方法是用ajax异步请求. 一.实现思路: 1.用户输入信息 2 ...

  3. Django——Ajax发送请求验证用户名是否被注册

    场景: 用户注册的时候,输入用户名之后,Ajax发送请求到后端,后端验证该用户名是否已经被注册,然后返回到注册页面提示用户. 1.模型: from django.db import models cl ...

  4. 基于jQuery实现的Ajax 验证用户名唯一性

    基于jQuery实现的Ajax 验证用户名唯一性 前端jsp页面代码 <tr> <th><span class="requiredField"> ...

  5. 11月10日上午ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  6. 利用jQuery实现的Ajax 验证用户名是否存在

    异步刷新实现方式有多种,也可以借助JS的多种框架,下面是使用jQuery框架实现的AJAX 验证用户名是否存在 jQuery.ajax概述 HTTP 请求加载远程数据. 通过jQuery 底层 AJA ...

  7. ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  8. Ajax检测用户名是否已经注册

    程序功能 当用户名输入完成(即用户名输入框失去焦点),利用Ajax检测用户名是否已经注册! 实现过程 利用Ajax向CheckUserServlet发送请求,判断该用户名是否可用.这里只是为了演示Aj ...

  9. 11.10 (下午)开课二个月零六天(ajax验证用户名,ajax调数据库)

    用ajax验证用户名是否可用 testuid.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&quo ...

随机推荐

  1. goroute应用-模拟远程调用RPC

    go语言简单模拟RPC,详见个人新博客:blog.dlgde.cn 代码如下: package main import ( "errors" "fmt" &qu ...

  2. vue中数据添加完成以后,数据回显

    1.格式 <FormItem label="奖品领取类型:" prop="getType" > <RadioGroup v-model=&qu ...

  3. IIS+nginx反向代理 负载均衡

    本文没有过多的讲述,只讲述重点地方.由这两个转自的文章进行中和 1.nginx+iis实现负载均衡(这篇文章主要是有第2篇文章的工具) 2.nginx+iis使用(这篇文章讲得很详细,配置文件直接复制 ...

  4. hadoop部署

    [root@xiong ~]# hostnamectl set-hostname hadoop001 [root@xiong ~]# vim /etc/hostnamehadoop001 vim /e ...

  5. Cocos Creator中使用事件中心

    export class EventCenter { /** 监听数组 */ private listeners = {}; /** * 注册事件 * @param name 事件名称 * @para ...

  6. 0 - Dao层(数据访问层设计)

    1. Dao 使用接口设计 2. Dao 没有实现代码, 使用模板实现(通过DynamicProxy+Dapper) 3. 模板格式暂定使用Ader Template 来自为知笔记(Wiz)

  7. Codeforces 279D The Minimum Number of Variables 状压dp

    The Minimum Number of Variables 我们定义dp[ i ][ mask ]表示是否存在 处理完前 i 个a, b中存者 a存在的状态是mask 的情况. 然后用sosdp处 ...

  8. 微软开源大规模数据处理项目 Data Accelerator

    微软开源了一个原为内部使用的大规模数据处理项目 Data Accelerator.自 2017 年开发以来,该项目已经大规模应用在各种微软产品工作管道上. 据微软官方开源博客介绍,Data Accel ...

  9. 期末Java Web大作业----简易的学生管理系统

    学生信息管理系统(大作业) 2018-12-21:此文章已在我的网站更新,添加视图介绍等信息,源码请移步下载https://www.jeson.xin/javaweb-sims.html PS:首先不 ...

  10. VUE2+elementUI前端实现 三级省市联动select

    html: <el-form-item label="选择地区:"> <el-select size="small" style=" ...