修改密码的程序的逻辑错误,请教各位达人,哪里错了

elian 2005-05-07 03:23:55
<%

username=Request("username")
oldpass=Request("oldpass")
newpass=Request("newpass")
checkpass=Request("checkpass")

%>
<%if MD5(oldpass)<> session("password") then%>
<script language=javascript>
alert( "错误:原密码错误!" );
location.href = "javascript:history.back()"
</script>
<%end if
if newpass="" or checkpass="" then%>
<script language=javascript>
alert( "错误:请输入新密码!" );
location.href = "javascript:history.back()"
</script>
<%end if
if newpass <> checkpass then%>
<script language=javascript>
alert("两次新密码不一致!!!")
location.href = "javascript:history.back()"
</script>
<%
end if
'开始修改用户密码
set AdoRs=Server.CreateObject("AdoDB.RecordSet")
lcsql="select * from yh_k where yh_zh='"+username+"'"
AdoRS.Open lcSql,conn,2,3

if not adors.eof then
adors("yh_mm")=MD5(newpass)
adors.update()
Session("password")=MD5(newpass)
end if
set adors=Nothing

%>
...全文
77 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
elian 2005-05-07
  • 打赏
  • 举报
回复
如果我原密码没输,他会跳出对话框报错.但是当我第二次输入原密码的时候,却发现原密码已经不对了
进数据库查看已经密码修改了,可是明明碰到msgbox就返回的,为什么还会执行倒后面的?
elian 2005-05-07
  • 打赏
  • 举报
回复
我登陆的时候把密码报错在session的
反正应该是判断的时候的错误
mingyuexingguang 2005-05-07
  • 打赏
  • 举报
回复
出错现象?重现步骤?

AdoRS.Open lcSql,conn,1,3
试试

一般没人把旧密码保存到SESSION,一般从数据库读

你这个程序有漏洞的 - -
用户名输入 'or''=' 试试
leo963258 2005-05-07
  • 打赏
  • 举报
回复
出什么错

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧