ASP高手请进,帮助看看修改密码

王朝知道·作者佚名  2011-09-20
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
 
問題描述:

<html>

<!--包含用户登陆校验文件-->

<!--包含连接数据库文件-->

<!--#include file="dbconn.asp"-->

<!--#include file="findDept.asp"-->

<%

dim password,newpassword,newpasswordtemp,userid

dim sql,rs

if Request.Form("submit")="提交" then

userid = session("userid")

password = Request("password")

newpassword = Request("newpassword")

newpasswordtemp = Request("newpasswordtemp")

if request.form("newpassword") = request.form("newpasswordtemp") then

if request.form("pass") = rs("pass") then

set rs = Server.CreateObject("ADODB.Recordset")

sql="update tb_Student set Pwd='" & newpassword & "' where UserID="& userid

rs.open sql,conn,1,3

Response.Write "<script language='javascript'>alert('修改成功!!');"

response.write"this.location.href='"&request.ServerVariables("HTTP_REFERER")&"';</SCRIPT>"

else

rs.Close()

set rs = Nothing

if request.form("password") <> session("PWD") then

sql="select * from T_B_WebUser where UserID = '"& UserID &"'"

Response.Write "<script language='javascript'>alert('对不起,旧密码错误!!');"

response.write"this.location.href='"&request.ServerVariables("HTTP_REFERER")&"';</SCRIPT>"

end if

end if

else

rs.Close()

set rs = Nothing

if request.form("newpassword") = request.form("newpasswordtemp") then

Response.Write "<script language='javascript'>alert('对不起,两次输入的新密码不一致!!');"

response.write"this.location.href='"&request.ServerVariables("HTTP_REFERER")&"';</SCRIPT>"

end if

end if

end if

%>

<HEAD>

<TITLE>password</TITLE>

</HEAD>

<BODY>

<BR><BR><CENTER>

<FONT SIZE="5" COLOR=#000000 FACE="宋体">修改密码</FONT>

</CENTER><BR><BR>

<FORM METHOD=POST ACTION="pwd.asp">

<TABLE align=center width="60%" border="1" cellspacing="0">

<tr>

<TD>当前用户名: <font color="#FF0000"><%=session("UserID")%></font>

<input name="UserID" type="hidden" value="<%=session("UserName")%>">

<TR>

<TD>您的旧密码:

<INPUT TYPE="password" NAME="password" size=20 maxlength=12>

<font color=red>*</font>

<FONT SIZE="" COLOR="">(长度不超过12位,下同)</FONT><BR>

<HR>

输入新密码:<INPUT TYPE="password" NAME="newpassword" size=20 maxlength=12>

<font color=red>*</font><BR>

新密码确认:<INPUT TYPE="password" NAME="newpasswordtemp" size=20 maxlength=12>

<font color=red>*</font><BR></TD>

</TR>

<TR>

<TD align=center>

<P><input type="submit" value="提交" name="submit">

<input type="reset" value="重写" name="B2">

</P></TD>

</TR>

</TABLE>

</FORM>

</body>

</html>

--------------------

错误类型:

ADODB.Recordset (0x800A0CC1)

在对应所需名称或序数的集合中,未找到项目。

/pwd.asp, 第 15 行

第15行--if request.form("pass") = rs("pass") then --

错误类型:

ADODB.Recordset (0x800A0E78)

对象关闭时,不允许操作。

/pwd.asp, 第 31 行

第31行--rs.Close()--

參考答案:

你这里根本就还没open怎么就用rs("pass")了,

set rs = Server.CreateObject("ADODB.Recordset")

sql="update tb_Student set Pwd='" & newpassword & "' where UserID="& userid

rs.open sql,conn,1,3

放到if request.form("pass") = rs("pass") then 前面去

,上面的同胞说得对,31行的rs.close()和set rs=Nothing可以去掉

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航