⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 password.asp

📁 请认真阅读您的文件包然后写出其具体功能(至少要20个字)。尽量不要让站长把时间都花费在为您修正说明上。压缩包解压时不能有密码。
💻 ASP
字号:
<!--#include file="conn.asp"-->
<!--#include file="inc/const.asp"-->
<!--#include file="inc/md5.asp"-->
<%
call anysale.minHead("找回密码","","")
%>
<div class="line30">&nbsp;</div><div class="line30">&nbsp;</div>

<div class="bodyer">
<%
dim rs
select case request("action")
	case "question"
		call question()
	case "password"
		call password()
	case else
		call main()
end select

sub main()
%>
 <div class="left">
  <ul style="width:120px;padding:0 0 0 60px;">
   <li class="minLT color"><h2 style="padding:38px 0 0 50px;">找回密码</h2></li>
   <li class="minLM">
    <p class="minON">1、填写用户名</p>
    <p>2、回答密码问题</p>
    <p>3、获取密码</p>
   </li>
   <li class="minLF">&nbsp;</li>
  </ul>
 </div>
 
 <div class="tab" style="width:500px;margin:50px 0 0 100px;">
  <div class="tabList">
   <div><ul class="tabH"><li class="tabL">&nbsp;</li><li class="tabM">填写用户名</li><li class="tabR">&nbsp;</li></ul></div>
  </div>
  <form name="findpassForm" id="findpassForm" method="post" action="?action=question" onsubmit="return check('用户名',$('username').value,'usernameNote',0,4,4,20)&&checkCode('验证码',$('passcode').value,'passcodeNote')">
  <div class="list line30">
   <ul><li>&nbsp;</li></ul>
   <ul><li>&nbsp;</li></ul>
<%
if not isnull(session("findTime")) and cint(session("findTime"))>=cint(anysale.asUser(7)) then
	response.write"<div style=""text-align:center;"">您已超过每天找回密码"&cint(anysale.asUser(7))&"次的系统设置。</div>"
else
%>
   <ul>
	<li class="name txtRig"><span class="red">*</span> 用户名:</li>
	<li class="names"><input type="text" name="username" id="username" size="15" maxlength="20" onblur="check('用户名',this.value,'usernameNote',0,4,4,20)" /></li>
    <li><span class="note f12" id="usernameNote">请输入您的用户名</span></li>
   </ul>
   <ul>
    <li class="name txtRig"><span class="red">*</span> 验证码:</li>
    <li class="names"><input type="text" name="passcode" id="passcode" onfocus="setCode('findCode','passcodeNote');" onblur="checkCode('验证码',this.value,'passcodeNote')" size="15" maxlength="4" /> <span id="findCode"></span></li>
    <li><span class="note f12" id="passcodeNote"><strong>提示</strong>:点击文本框显示验证码</span></li>
   </ul>
   <ul><li>&nbsp;</li></ul>
   <ul>
    <li class="name">&nbsp;</li>
	<li><input type="submit" name="submit" value="下一步" class="button" onmouseover="this.className='buttonH'" onmouseout="this.className='button'" /></li>
   </ul>
<%end if%>
   <ul><li>&nbsp;</li></ul>
  </div>
  </form>
 </div>
<%
end sub

sub question()
	if request.form("username")="" then
		errNote=errNote+"<li>请输入您的用户名。</li>"
		iserr=true
	end if
	
	if cstr(session("getcode"))<>lcase(cstr(trim(request("passcode")))) then
		errNote=errNote+"<li>您输入的确认码和系统产生的不一致,请重新输入。</li>"
		iserr=true
	end if
	session("getcode")=""
	
	if iserr then
		anysale.errWin(errNote)
		exit sub
	end if
%>
 <div class="left">
  <ul style="width:120px;padding:0 0 0 60px;">
   <li class="minLT color"><h2 style="padding:38px 0 0 50px;">找回密码</h2></li>
   <li class="minLM">
    <p>1、填写用户名</p>
    <p class="minON">2、回答密码问题</p>
    <p>3、获取密码</p>
   </li>
   <li class="minLF">&nbsp;</li>
  </ul>
 </div>
 
 <div class="tab" style="width:500px;margin:50px 0 0 100px;">
  <div class="tabList">
   <div><ul class="tabH"><li class="tabL">&nbsp;</li><li class="tabM">回答密码问题</li><li class="tabR">&nbsp;</li></ul></div>
  </div>
  <form name="findpassForm" id="findpassForm" method="post" action="?action=password" onsubmit="return check('问题答案',$('answer').value,'answerNote',0,0,5,100)&&checkCode('验证码',$('passcode').value,'passcodeNote')">
  <div class="list line30">
   <ul><li>&nbsp;</li></ul>
   <%
	set rs=conn.execute("select question from as_user where username='"&request.form("username")&"'")
	if not(rs.bof and rs.eof) then
   %>
   <ul>
	<li class="name txtRig">密码问题:</li>
	<li><%=rs("question")%></li>
   </ul>
   <ul>
    <li class="name txtRig"><span class="red">*</span> 问题答案:</li>
    <li class="names"><input type="password" name="answer" id="answer" size="30" onblur="check('问题答案',this.value,'answerNote',0,0,5,100)" maxlength="100" /></li>
    <li><span class="note f12" id="answerNote">请输入密码答案</span></li>
   </ul>
   <ul>
    <li class="name txtRig"><span class="red">*</span> 验证码:</li>
    <li class="names"><input type="text" name="passcode" id="passcode" onfocus="setCode('findCode','passcodeNote');" onblur="checkCode('验证码',this.value,'passcodeNote')" size="15" maxlength="4" /> <span id="findCode"></span></li>
    <li><span class="note f12" id="passcodeNote"><strong>提示</strong>:点击文本框显示验证码</span></li>
   </ul>
   <ul><li>&nbsp;</li></ul>
   <ul>
    <li class="name">&nbsp;</li>
	<li>
	 <input type="submit" name="submit" value="下一步" class="button" onmouseover="this.className='buttonH'" onmouseout="this.className='button'" />
	 <input type="hidden" name="username" value="<%=request.form("username")%>" />
	</li>
   </ul>
   <%else%>
   <ul>
	<li class="name">&nbsp;</li>
	<li>抱歉,您输入的用户名不存在!</li>
   </ul>
   <ul><li>&nbsp;</li></ul>
   <ul><li>&nbsp;</li></ul>
   <ul>
    <li class="name">&nbsp;</li>
	<li><input type="button" name="back" value="返 回" onclick="location.href('password.asp');" class="button" onmouseover="this.className='buttonH'" onmouseout="this.className='button'" /></li>
   </ul>
   <%end if%>
   <ul><li>&nbsp;</li></ul>
  </div>
  </form>
 </div>
<%
	rs.close
	set rs=nothing
end sub

sub password()
	dim rs,newRs,sql,newpass,ranNum,newNum

	if session("findTime")<>"" then
		session("findTime")=cint(session("findTime"))+1
	else
		session("findTime")=1
	end if
	session.timeout=1440
	
	if request.form("username")="" then
		errNote=errNote+"<li>您的用户名已丢失。</li>"
		iserr=true
	end if
	
	if request.form("answer")="" then
		errNote=errNote+"<li>请输入您的密码答案。</li>"
		iserr=true
	end if
	
	if cstr(session("getcode"))<>lcase(cstr(trim(request("passcode")))) then
		errNote=errNote+"<li>您输入的确认码和系统产生的不一致,请重新输入。</li>"
		iserr=true
	end if
	session("getcode")=""
	
	if iserr then
		anysale.errWin(errNote)
		exit sub
	end if
%>
 <div class="left">
  <ul style="width:120px;padding:0 0 0 60px;">
   <li class="minLT color"><h2 style="padding:38px 0 0 50px;">找回密码</h2></li>
   <li class="minLM">
    <p>1、填写用户名</p>
    <p>2、回答密码问题</p>
    <p class="minON">3、获取密码</p>
   </li>
   <li class="minLF">&nbsp;</li>
  </ul>
 </div>
 
 <div class="tab" style="width:500px;margin:50px 0 0 100px;">
  <div class="tabList">
   <div><ul class="tabH"><li class="tabL">&nbsp;</li><li class="tabM">获取密码</li><li class="tabR">&nbsp;</li></ul></div>
  </div>
  <div class="list line30">
   <ul><li>&nbsp;</li></ul>
   <ul><li>&nbsp;</li></ul>
<%
	set rs=conn.execute("select answer from as_user where username='"&request.form("username")&"'")
	if not(rs.bof and rs.eof) then
		if rs(0)=md5(replace(request.form("answer"),"'",""),16) or rs(0)=md5(replace(request.form("answer"),"'",""),32) then
			'改为32位密码
			if rs(0)=md5(replace(request.form("answer"),"'",""),16) then
				conn.execute("update as_user set answer='"&md5(replace(request.form("answer"),"'",""),32)&"' where username='"&request.form("username")&"'")
			end if
			
			randomize
			do while len(ranNum)<8
				newNum=cstr(chr((57-48)*rnd+48))
				ranNum=ranNum&newNum
			loop
			newpass=md5(ranNum,32)

			set newRs = server.createObject("ADODB.Recordset")
			sql="select password from as_user where username='"&request.form("username")&"'"
			newRs.open sql,conn,1,3
			if not(newRs.bof and newRs.eof) then
				newRs("password")=newpass
				newRs.update
			end if
			newRs.close
			set newRs=nothing
%>
   <ul><li class="name">&nbsp;</li><li>恭喜,密码已成功找回。</li></ul>
   <ul><li class="name">&nbsp;</li><li>请记住您的新密码:<%=ranNum%></li></ul>
   <ul><li>&nbsp;</li></ul>
   <ul>
    <li class="name">&nbsp;</li>
	<li>
	 <input type="button" name="back" value="返回首页" onclick="location.href('index.asp');" class="button" onmouseover="this.className='buttonH'" onmouseout="this.className='button'" />
	 &nbsp;
	 <input type="button" name="back" value="登录会员" onclick="location.href('login.asp');" class="button" onmouseover="this.className='buttonH'" onmouseout="this.className='button'" />
	</li>
   </ul>
<%
		else
%>
   <ul><li class="name">&nbsp;</li><li>抱歉,您输入的答案不正确。</li></ul>
   <ul><li>&nbsp;</li></ul>
   <ul><li>&nbsp;</li></ul>
   <ul>
    <li class="name">&nbsp;</li>
	<li><input type="button" name="back" value="返 回" onclick="location.href('password.asp');" class="button" onmouseover="this.className='buttonH'" onmouseout="this.className='button'" /></li>
   </ul>
<%
		end if
	end if
	rs.close
	set rs=nothing
%>
   <ul><li>&nbsp;</li></ul>
  </div>
 </div><%
end sub
%>
</div>

<div class="line30">&nbsp;</div>
<%
anysale.minFoot
closeConn
%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -