1.搭建Ajax开发框架,代码如下

<script language="javascript">
var http_request = false;
function createRequest(url) {
    //初始化对象并发出XMLHttpRequest请求
    http_request = false;
    if (window.XMLHttpRequest) {                                        //Mozilla等其他浏览器
        http_request = new XMLHttpRequest();
        if (http_request.overrideMimeType) {
            http_request.overrideMimeType("text/xml");
        }
    } else if (window.ActiveXObject) {                              //IE浏览器
        try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                http_request = new ActiveXObject("Microsoft.XMLHTTP");
           } catch (e) {}
        }
    }
    if (!http_request) {
        alert("不能创建XMLHTTP实例!");
        return false;
    }
    http_request.onreadystatechange = alertContents;                     //指定响应方法
                                                                                              
    http_request.open("GET", url, true);                                 //发出HTTP请求
    http_request.send(null);
}
function alertContents() {                                               //处理服务器返回的信息
    if (http_request.readyState == 4) {
        if (http_request.status == 200) {
            alert(http_request.responseText);
        } else {
            alert('您请求的页面发现错误');
        }
    }
}
</script>

2.编写JavaScript的自定义函数checkname();用于检测用户名是否为空,当用户名不为空时,调用createRequest() 方法发送请求检测用户名是否存在,代码如下:

function checkname()
{
    var username = form1.user.value;
    if (username=="")
    {
        window.alert ("请输入用户名");       
    }
    else
    {
                                                                             
createRequest('action/checkname.php?username='+username+'&nocache='+new Date().getTime());
    }
}

3.在页面添加"检测用户名超链接"

<td width="93" class="ziti2"><a href="#" οnclick="checkname()">[检测用户名]</a></td>

4.创建checkname.php处理页面,代码如下

<?php
header("Content-type= text/html; charset=utf8");
include "../conn/conn.php";
$GB2312string=iconv( 'UTF-8', 'gb2312//IGNORE' , $RequestAjaxString);           //Ajax中先用encodeURIComponent对要提交的中文进行编码
$username = $_GET[username];
$sql=mysql_query("select * from user where username='".$username."'")or die (mysql_error());
$info=mysql_fetch_array($sql);
if($info)
{
    echo "祝贺您!用户名[".$username."]没有被注册!";
}
else
{
    echo "祝贺您!用户名[".$username."]没有被注册!";
}
?>


初学PHP,在学习实践中记录下问题,技巧,代码有问题或者有其他意见欢迎提出,共同进步~