ajax 应用。

1.使用ajax完成用户名的验证

register.php

<html>

<head><title>用户注册</title></head>

<meta http-equiv="content-type" content="text/html;charset=utf8"/>

<script type="text/javascript">

  //创建ajax引擎

  function getXmlHttpObject(){

  if(window.ActiveXObject){ 

    xmlHttpRequest=new ActiveXObject("Microsoft.XMLHTTP");

  }else{

    xmlHttpRequest=new XMLHttpRequest();

  }

    return xmlHttpRequest;

  }

var myXmlHttpRequest="";

function checkName(){

    myXmlHttpRequest=getXmlHttpObject();//实例一个myXmlHttpRequest对象

//怎么判断创建ok

if(myXmlHttpRequest){

//通过myXmlHttpRequest对象发送请求到服务器的某个页面

//第一个参数表示请求的方式, "get" / "post"

//第二个参数指定url,对哪个页面发出ajax请求(本质仍然是http请求)

//第三个参数表示 true表示使用异步机制,如果false表示不使用异步

 

var url="/ajax/registerProcess.php?mytime="+new  Date()+"&username="+$("username").value;

//打开请求.

myXmlHttpRequest.open("get",url,true);

//指定回调函数.chuli是函数名

myXmlHttpRequest.onreadystatechange=chuli;

 

//真的发送请求,如果是get请求则填入 null即可

 

//如果是post请求,则填入实际的数据

 

myXmlHttpRequest.send(null); 

}

}

 

/回调函数

 

function chuli(){

//window.alert("处理函数被调回"+myXmlHttpRequest.readyState);

//我要取出从registerPro.php页面返回的数据

if(myXmlHttpRequest.readyState==4){

//取出值,根据返回信息的格式定.text

 

//window.alert("服务器返回"+myXmlHttpRequest.responseText);

$('myres').value=myXmlHttpRequest.responseText;

 

}

}

//这里我们写一个函数

 

function $(id){

return document.getElementById(id);

}

}

</script>

<body>

<form action="???" method="post">

    用户名字:<input type="text"  onkeyup="checkName();"  name="username1" id="username"><input type="button" onclick="checkName();"  value="验证用户名">

    <input style="border-width: 0;color: red" type="text" id="myres">

    <br/>

    用户密码:<input type="password" name="password"><br>

    电子邮件:<input type="text" name="email"><br/>

    <input type="submit" value="用户注册">

    </form>

</body>

</html>

 

registerpro.php

<?php

/这里两句话很重要,第一讲话告诉浏览器返回的数据是xml格式

header("Content-Type: text/xml;charset=utf-8");

//告诉浏览器不要缓存数据

header("Cache-Control: no-cache");

 

//接收数据

$username=$_GET['username'];

if($username=="ps"){

echo "用户名不可以用";//注意,这里数据是返回给请求的页面.

}else{

echo "用户名可以用";

}

?>

当我们输入的时候不用刷新就可以判断用户名可用不可用了。

 

ajax的原理:

用户界面---》ajax引擎---》客户端(http请求)---》应用服务器---》数据库数据查询---》查询返回应用服务器

---》xml/json/text格式数据---》ajax引擎---》用户界面

posted on 2012-09-02 13:43  paly76  阅读(153)  评论(0)    收藏  举报

导航