XMLHttp的演示与代码示例

来源:互联网 发布:国房景气指数年度数据 编辑:程序博客网 时间:2024/06/08 05:54

登录页面:index.asp
//////////////////////////////////
<html>
<head>
<title>平台</title>
</head>

<body>
<form method="POST" action="UpdatePass.asp" name="Form1">
会员帐号:<input readonly="userid" maxlength="20" name="userid" size="20">
原密 码:<input class="f11" maxlength="20" name="OldPass" size="20">
新密码:<input class="f11" maxlength="20" name="NewPass" size="20">
<input type="submit" value=" 修改 ">
</form>
</body>

</html>

///////////////////////////////////

action的接收页面:UpdatePass.asp
//////////////////////////////////
<%@LANGUAGE="VBSCRIPT" CODEPAGE="CP_ACP"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>更改密码</title>
</head>
<!--#include file="conn.asp"-->
<!--#include file="md5.asp"-->
<body>
<%
UserID=request.Form("UserID")
OldPass=request.Form("OldPass")
NewPass=request.Form("NewPass")
MOldPass=md5(OldPass)
'response.Write(MOldPass)
'response.Write(UserID)
'response.End()
set rs=server.CreateObject("adodb.recordset")
rs.open "select password from usertable where username='"&UserID&"' and password='"&MOldPass&"'",conn,1,3
if rs.eof then
response.write "<SCRIPT language=JavaScript>alert('对不起,你的原密码错误,请重新输入!');window.history.go(-1);</SCRIPT>"
response.end
else
'rs("password")=md5(NewPass)
'rs.update

end if


'传递参数到论坛更改密码
urlStr="http://localhost/updatepass2.asp?UserID="&UserID&"&OldPass="&OldPass&"&NewPass="&NewPass
GetResult(urlStr)'函数带入一个服务网页的URL参数,把上传的指令安放在URL后面的参数上,如:

response.write "<SCRIPT language=JavaScript>alert('密码更新成功,请记住新密码!');window.location.href='index.asp';</SCRIPT>"

Function GetResult(urlStr)
Dim xmlHttp
Dim retStr

Set xmlHttp = CreateObject("Msxml2.XMLHTTP") '创建对象
On Error Resume Next '出错处理
xmlHttp.Open "get", urlStr, False '用get方式打开连接,异步执行。
xmlHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" '上传表单
xmlHttp.Send '发送指令

If Err.Number = 0 Then '如果连接正确
retStr = xmlHttp.responseText '等待并获得服务端返回的结果字符串
'response.BinaryWrite(xmlHttp.responseBody)
Else
retStr = "Url not found" '否则返回出错信息
End If

Set xmlHttp = nothing '释放对象 GetResult = retStr '返回结果
End Function
%>
</body>
</html>

////////////////////////

xmlhttp发送接收的页面:UpdatePass2.asp
////////////////////////////////////////
<%@LANGUAGE="VBSCRIPT" CODEPAGE="CP_ACP"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>更改密码</title>
</head>
<!--#include file="conn.asp"-->
<!--#include file="md5.asp"-->
<body>
<%
UserID=request.QueryString("UserID")
OldPass=request.QueryString("OldPass")
NewPass=request.QueryString("NewPass")
MOldPass=md5(OldPass)
response.Write(md5(NewPass))
'response.End()
set rs=server.CreateObject("adodb.recordset")
rs.open "select password from usertable where username='"&UserID&"' and password='"&MOldPass&"'",conn,1,3
if rs.eof then
response.write "<SCRIPT language=JavaScript>alert('对不起,你的原密码错误,请重新输入2!');window.history.go(-1);</SCRIPT>"
response.end
else
rs("password")=md5(NewPass)
rs.update
end if


' GetResult(urlStr)'函数带入一个服务网页的URL参数,把上传的指令安放在URL后面的参数上,如:

'response.write "<SCRIPT language=JavaScript>alert('密码更新成功,请记住新密码!');window.location.href='index.asp';</ SCRIPT>"

Function GetResult(urlStr)
Dim xmlHttp
Dim retStr

Set xmlHttp = CreateObject("Msxml2.XMLHTTP") '创建对象
On Error Resume Next '出错处理
xmlHttp.Open "get", urlStr, False '用get方式打开连接,异步执行。
xmlHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" '上传表单
xmlHttp.Send '发送指令

If Err.Number = 0 Then '如果连接正确
retStr = xmlHttp.responseText '等待并获得服务端返回的结果字符串
Else
retStr = "Url not found" '否则返回出错信息
End If

Set xmlHttp = nothing '释放对象 GetResult = retStr '返回结果
End Function
%>
</body>
</html>

下载演示源码

原创粉丝点击