本文实例讲述了Ajax+PHP+MySQL登陆示例。分享给大家供大家参考。具体如下:
运行效果截图如下:

具体代码如下:
1 login.php
登录界面中,javascript脚本用ajax方式异步请求dologin.php,dologin.php负责用户信息验证(包括验证码,php生成验证码可以自行搜索).登录界面的代码如下:
<?php session_start();?>
<!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>login</title>
<link rel="stylesheet" type="text/css" href="CSS/login.css" />
<script src="JS/ajaxhelper.js" type="text/javascript"></script>
<script src="JS/jquery-1.3.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
function chkForm() {
if (m$('username').value == "") {
alert('用户名不能为空.');
m$('username').focus();
return false;
}
if (m$('password').value == "") {
alert('密码不能为空.');
m$('password').focus();
return false;
}
if (m$('password').value != "" && m$('username').value != "") {
var xmlhttp = createRequest();
if (xmlhttp) {
m$('loading').innerHTML = "<font color='red'>loading...</font>";
var username = m$('username').value;
var pwd = m$('password').value;
var code = m$('txtCode').value;
var url = "dologin.php";
xmlhttp.open("POST", url, true);
xmlhttp.onreadystatechange = ValidateResult;
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlhttp.send("username=" + escape(username) + "&password=" + escape(pwd) + "&code=" + escape(code));
} else {
alert('xmlHttp创建失败.');
}
function ValidateResult() {
if (xmlhttp.readyState == 4) {
if (xmlhttp.status == 200) {
if (xmlhttp.responseText != "") {
//window.alert(xmlhttp.responseText);
var obj = eval("(" + xmlhttp.responseText + ")");
if (obj.result == true) {
alert("提示:" + obj.info);
window.location = 'index.php';
} else {
alert("错误:" + obj.info);
}
} else {
window.alert("从服务器获取失败");
window.location.reload();
}
m$('loading').innerHTML = "";
}
}
}
}
}
function m$(id) {
return document.getElementById(id);
}
function changeCode() {
var xmlhttp = createRequest();
if (xmlhttp) {
m$('loading').innerHTML = "<font color='red'>loading...</font>";
var dt = new Date().getTime();
// alert(dt);
var url = "function/imagecode.php?dummay" + escape(dt);
xmlhttp.open("GET", url, true);
xmlhttp.onreadystatechange = ValidateResult;
xmlhttp.send(null);
} else {
alert('xmlHttp创建失败.');
}
function ValidateResult() {
if (xmlhttp.readyState == 4) {
if (xmlhttp.status == 200) {
var dt = new Date().getTime();
var url = "function/imagecode.php?dummay" + escape(dt);
m$('imgCode').src = "function/imagecode.php?dummay" + escape(dt);
m$('loading').innerHTML = "";
}
}
}
}
function showTool() {
$('#divToolTip').css("display", "block");
}
function hideTool() {
$('#divToolTip').css("display", "none");
}
window.onload = initPage;
function initPage() {
$('#divToolTip').css("display", "none");
}
</script>
</head>
<body>
<div style="background-color:#2A3F55; height:80px;">
</div>
<div style="min-height:500px;">
<div class="left">
<div style="margin:120px auto auto auto; height:300px; text-align:left">
<div style="font-size:26px;color:#2A3F55; text-align:center;">Ajax PHP Demo System
<img src="Images/appstorm-icon.png" alt="appcation storm image" style="position:relative;top:-18px; left:-12px; vertical-align:middle; text-align:center;font-size:10px; width:65px; height:46px;"/>
</div>
<br/>
<hr style="border:dashed thin #2A3F55;width:70%; text-align:center;"/>
<div style="font-size:13px;color:#999999; margin:20px auto 0 auto; padding-left:200px;">
Author:<a href="#" onmousemove="showTool();" onmouseout="hideTool();">wangming</a>
</div>
<div style="font-size:13px;color:#999999;margin:20px auto auto auto; padding-left:200px;">DateTime:2009-9-1</div>
<div style="font-size:13px;color:#999999;margin:20px auto auto auto; padding-left:200px;">Version:1.0.0</div>
<div style="font-size:13px;color:#999999;margin:20px auto auto auto; padding-left:200px;">Email:wangmingemail@163.com </div>
<div id="divToolTip">
<img src="Images/ming.jpg" height="86px;"/>
<span class="authordes">
<br/>
姓名:wangming<br/>
电商06-2<br/>
<(UU}Р}ё}Ё}щ}э}}щЁZЁЁЁи4(4(4(fW^!CV6eME3{:UIN74(bF+'!CkZ?{:fW*ro疒j惚r'&* |