<! doctype html public "-//w3c//dtd html 4.0//en"
"http://www.w3.org/tr/rec-html140/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
<title>ajax用户注册演示程序</title>
<script language="网页特效" type="text/网页特效">
<!--
//创建函数
function createxmlhttp()
{
var request;
var browser = navigator.appname;
//使用ie,则使用xmlhttp对象
if(browser == "microsoft internet explorer")
{
var arrversions = ["microsoft.xmlhttp", "msxml2.xmlhttp.4.0",
"msxml2.xmlhttp.3.0", "msxml2.xmlhttp","msxml2.xmlhttp.5.0"];
for (var i=0; i < arrversions.length; i++)
{
try
{
//从中找到一个支持的版本并建立xmlhttp对象
request = new activexobject(arrversions[i]);
return request;
}
catch (exception)
{
//忽略,继续
}
}
}
else
{
//否则返回一个xmlhttprequest对象
request = new xmlhttprequest();
if(request.overridemimetype)
{
   request.overridemimetype('text/xml');
  }
return request;
}
}
//全局xmlhttp对象实例变量
var http = createxmlhttp();
//发送请求
function chkuser()
{
var url = "check.php教程"; //请求"checkusername" servlet
var name = document.getelementbyid("username").value;
url += ("?username="+escape(name)+"&oprate=chkuser");
http.open("get",url,true);
http.onreadystatechange = processhttpresponse;
http.send(null);
return ;
}
//处理响应
function processhttpresponse()
{
if(http.readystate == 4)
{
if(http.status == 200)
{
  var xmldocument = http.responsexml;
  if(http.responsetext!="该用户名有效,可以使用!")
{
//返回的信息动态显示
   document.getelementbyid("showstr").style.display = "";
   document.getelementbyid("username").style.background= "#ff0000";
   document.getelementbyid("showstr").innertext = http.responsetext;
  }
else
{
   document.getelementbyid("username").style.background= "#ffffff";
   document.getelementbyid("showstr").style.display = "";
document.getelementbyid("showstr").innertext = http.responsetext;
  }
}
else
{
   alert("你所请求的页面发生异常,可能会影响你浏览该页的信息!");
   alert(http.status);
}
}
}
//检验输入密码
function chkpassword()
{
var m=document.form1;
if(m.password.value.length>20 || m.password.value.length<6 )
{
document.getelementbyid("passwordstr").style.display = "";
  document.getelementbyid("password").style.background= "#ff0000";
  document.getelementbyid("passwordstr").innertext = "对不起,密码必须为英文字母、数字或下划线,长度为6~20!";
}
else
{
  document.getelementbyid("password").style.background= "#ffffff";
  document.getelementbyid("passwordstr").style.display = "none";
}
}
//验证两次密码是否一致
function chkconfirmpassword()
{
var m=document.form1;
  if (m.password.value != m.confirmpassword.value)
  {
   document.getelementbyid("confirmpasswordstr").style.display = "";
   document.getelementbyid("confirmpassword").style.background= "#ff0000";
   document.getelementbyid("confirmpasswordstr").innertext = "对不起,密码与重复密码不一致!";
  }
  else
  {
   document.getelementbyid("confirmpassword").style.background= "#ffffff";
   document.getelementbyid("confirmpasswordstr").style.display = "none";
  }
}
//验证email是否有效
function chkemail()
{
var m=document.form1;
var email = m.email.value;
//正则表达式
  var regex = /^([a-za-z0-9_-])+@([a-za-z0-9_-])+(.[a-za-z0-9_-])+/;
  var flag = regex.test(email);
  if(!flag)
  {
document.getelementbyid("emailstr").style.display = "";
   document.getelementbyid("email").style.background= "#ff0000";
   document.getelementbyid("emailstr").innertext = "对不起,邮箱地址无效!";
  }
  else
  {
document.getelementbyid("email").style.background= "#ffffff";
   document.getelementbyid("emailstr").style.display = "none";
  } }
//提交检查函数
function submitcheck()
{
var m=document.form1;
if(m.username.value.length==0)
{
  alert("对不起,用户名必须为英文字母、数字或下划线,长度为5~20。");
  m.username.focus();
  return false;
}
if(m.password.value.length==0)
{
  alert("对不起,密码必须为英文字母、数字或下划线,长度为5~20。");
  m.password.focus();
  return false;
}
if (m.password.value != m.confirmpassword.value)
{
  alert("对不起,密码与重复密码不一致!");
  m.confirmpassword.focus();
  return false;
}
if(m.email.value.length==0)
{
  alert("对不起,邮箱地址不能为空!!");
  m.email.focus();
  return false;
}
m.submit();
}
//-->
</script>
<body >
<form name="form1" method="post" action="register.php">
<h3 align="center">ajax用户注册程序</h3>
<table align="center" width="500" border="1" >
<tr>
<td><font color="red">*</font></td>
<td width="100">用户帐号:</td>
<td><input type="text" name="username" maxlength="20" style="background=#ffffff" onblur="chkuser()"></td>
<td><div id="showstr" style="background-color:#ff9900;display:none"></div></td>
</tr>
<tr>
<td><font color="red">*</font></td>
<td>用户密码:</td>
<td align="left"><input type="password" name="password" maxlength="22" style="background=#ffffff" onblur="chkpassword()"/> </td>
<td><div id="passwordstr" style="background-color:#ff9900;display:none"></div></td>
</tr>
<tr>
<td><font color="red">*</font></td>
<td>确认密码:</td>
<td><input type="password" name="confirmpassword" maxlength="20" style="background=#ffffff" onblur="chkconfirmpassword()"/></td>
<td><div id="confirmpasswordstr" style="background-color:#ff9900;display:none"></div></td>
</tr>
<tr>
<td><font color="red">*</font></td>
<td>email:</td>
<td><input type="text" name="email" maxlength="100" style="background=#ffffff" onblur="chkemail()"></td>
<td><div id="emailstr" style="background-color:#ff9900;display:none"></div></td>
</tr>
</table>
<div align="center">   <input type="button" name="ok" value=" 确定 " onclick="submitcheck()">
  <input type="reset" name="reset" value=" 取消 ">
</form>
</div>
</body>
</html>reg.php检测程序
<?php
header("content-type:text/html;charset=gb2312");
@mysql教程_connect('localhost','root','ebaeba') or die("数据库教程服务器连接失败");
@mysql_select_db("test") or die("数据库不存在或不可用"); $uname = $_get['username'];
//下面进行数据库查询  查找是不是有这一个用户
//如果没有查找到这个用户名 $sql="select * from t1 where name='".$uname."'";
$query=mysql_query($sql);
$row=mysql_fetch_object($query);
if(strlen($uname)<6||strlen($uname)>20)
{
$msg="用户名必须是6至20个字符.";
}
else
{ if($row==false)
{
$msg="该用户名有效,可以使用!";
}
else
{
$msg="对不起,此用户名已经存在,请更换用户名注册!";
}
}
echo $msg ;
?>

php和AJAX用户注册演示程序的更多相关文章

  1. Django 博客项目02 Form验证+ 上传头像(预览)+Ajax用户注册

    头像预览 $("#avatar_file").change(function(){ // 获取上传的文件对象 var file=$(this)[0].files[0]; // 读取 ...

  2. php实现注册

    <?php header("Content-Type:text/html;charset=gb2312"); @mysql_connect('localhost','root ...

  3. Django项目:CRM(客户关系管理系统)--51--42PerfectCRM实现AJAX全局账号注册

    #urls.py """PerfectCRM URL Configuration The `urlpatterns` list routes URLs to views. ...

  4. Ajax--Ajax基于原生javascript:创建Ajax对象、链接服务器、发送请求、接受响应结果

    Ajax概述 异步:指某段程序执行时不会阻塞其它程序执行,其表现形式为程序的执行顺序不依赖程序本身的书写顺序,相反则为同步. 同步请求: 请求是由浏览器发送 页面会刷新 异步请求: 请求是由浏览器的一 ...

  5. 自制“低奢内”CSS3注册表单,包含JS验证哦。请别嫌弃,好吗?。

    要求 必备知识 基本了解CSS语法,初步了解CSS3语法知识.和JS/JQuery基本语法. 开发环境 Adobe Dreamweaver CS6 演示地址 演示地址 预览截图(抬抬你的鼠标就可以看到 ...

  6. 自制“低奢内”CSS3登入表单,包含JS验证,请别嫌弃哦。

    要求 必备知识 基本了解CSS语法,初步了解CSS3语法知识.和JS/JQuery基本语法. 开发环境 Adobe Dreamweaver CS6 演示地址 演示地址 预览截图(抬抬你的鼠标就可以看到 ...

  7. 【jQuery】网上看到一个不错的登陆界面

    预览截图如下: Html部分代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

  8. 利用ajax技术 实现用户注册。

    一.ajax? 异步加载技术,在不刷新网页的前提下,实现部分网页内容的更新! AJAX 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容. 思考? 注册界面刚好可以应用 ...

  9. 【ajax】ajax异步实现用户注册验证

    从前台到后台实现简单用户注册检查用户是否存在 1.编写domain public class User { private String username; private String passwo ...

随机推荐

  1. c++ ,类型转换

    一.隐式转换 1)精度低转高,sigend转unsigend2)数值0,会转为为指针. 数组名会转换为首地址.3)bool转换 .0为false.其他为true.-1也是true...4)非const ...

  2. C# ?(问号)的三个用处(转载)

    public DateTime? StatusDateTime = null; 脑子便也出现个问号,这是什么意思呢?网上搜下,总结如下: 1. 可空类型修饰符(?): 引用类型可以使用空引用表示一个不 ...

  3. 关于level DB的相关资料

    可以参考: http://blog.csdn.net/houzengjiang/article/details/7718548 http://www.cnblogs.com/haippy/archiv ...

  4. (一)二维数组&&指针数组与数组指针

    一.首先我们从字面意思理解一下什么是指针数组什么是数组指针 1.指针数组:本质是一个数组,数组中的每一个元素是一个指针. 2.数组指针:本质是一个指针,而指针指向一个数组. 二.我们该怎么区分指针数组 ...

  5. 僵尸进程学习 & 进程状态列表 & Linux信号学习

    参考这篇文章: http://www.mike.org.cn/articles/treatment-of-zombie-processes-under-linux/ 在Linux进程的状态中,僵尸进程 ...

  6. goLang文件遍历

    package main import (  "fmt"  "io/ioutil"  "os"  "path/filepath&q ...

  7. Oracle在Linux下使用异步IO(aio)配置

    1.首先用root用户安装以下必要的rpm包 # rpm -Uvh libaio-0.3.106-3.2.x86_64.rpm# rpm -Uvh libaio-devel-0.3.106-3.2.x ...

  8. Oracle session inactive状态临时表数据未清空问题

    问题描述:Oracle数据库,java代码使用某数据库实例,获取connection并在使用结束关闭,而session未销毁,而是状态变为inactive从而导致临时表数据未清空. Oracle临时表 ...

  9. 十问 Linux 虚拟内存管理 (glibc) (二)

    版权声明:本文由陈福荣原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/184 来源:腾云阁 https://www.qclo ...

  10. solr5.2.1环境搭建教程

    环境:w8.1 + solr5.2.1 + apache7.0+jdk1.7 解压:solr5.2.1 复制E:\solr-5.2.1\server\webapps 下的solr.war包到D:\ap ...