serv-u|示例|在线
我们利用Serv-U的obdc功能,可以把FTP用户信息存在数据库中,这样对Web操作方便了很多,下面是在线更改密码的列子,数据库为Access,表和字段的设计请参考Serv-U的帮助文件。
加密算法为随机码与MD532位加密,例如:
两个随机字母:ab
用户输入密码:123456
生成的密码为:ab +MD5(ab123456)
参考:
补充:md5返回为32位的大写字符
提示:代码仅实现更改密码的功能,并不一定完全符合或达到您的需求。
<!--#includefile='conn.asp'-->
<!--#includefile='include/md5.asp'-->
<%
dimact,UserName,OldPassword,NewPassword,reNewPassword
act=Request.form("act")
ifact="update"then
UserName =Request.form("UserName")
OldPassword =Request.form("OldPassword")
NewPassword =Request.form("NewPassword")
reNewPassword =Request.form("reNewPassword")
UserName =Replace(UserName,"'","'")
iflen(UserName)<1orlen(OldPassword)<1orlen(NewPassword)<1orlen(reNewPassword)<1then
alert("表单没有填写完整")
endif
iftrim(NewPassword)<>trim(reNewPassword)then
alert("密码与确认密码不一样")
endif
Sql0="selecttop1name,[password]from[useraccounts]wherename='"&UserName&"'"
setrs0=conn.execute(Sql0)
ifrs0.eofandrs0.bofthen
alert("用户名不存在")
else
dbname=rs0("name")
dbpassword=rs0("password")
endif
iftrim(cdbpassword)<>trim(dbpassword)then
alert("密码错误")
else
rndstr=MyRandc(2) '两位随机字母
newdbpassword=rndstr& md5(rndstr&NewPassword)
sql2="update[useraccounts]set[password]='"&newdbpassword&"'wherename='"&UserName&"'"
conn.execute(sql2)
alert("密码已经更改,可能要几钟后才能生效")
endif
endif
functionalert(x)
response.write"<scriptlanguage='JavaScript'>alert('"&replace(x,"""","""")&"');history.go(-1);</script>"
conn.close
setconn=nothing
response.end
endfunction
functionMyRandc(n)'生成随机字符,n为字符的个数
thechr=""
fori=1ton
Randomizetimer
zNum=cint(25*Rnd)
ifzNummod2=0then
zNum=zNum+97
else
zNum=zNum+65
endif
thechr=thechr&chr(zNum)
next
MyRandc=thechr
endfunction
%>
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
<METANAME="Author"CONTENT="海娃(51windows)">
<METANAME="Keywords"CONTENT="">
<title>更改FTP(Serv-U)密码-51windows.net</title>
</head>
<body>
<formmethod="POST"action=""name="form"autocomplete="off">
<inputtype="hidden"name="act"value="update">
<divalign="center">
<center>
<tableborder="0"width="480"cellpadding="2"cellspacing="1"class="table"> <tr>
<tdwidth="100%"align="center"colspan="2"class="title"> </tr>
<tr>
<tdwidth="30%"align="left"> 用户名[√]:</td>
<tdwidth="70%"><inputclass="input"type="text"maxlength=20 name="UserName"size="25"value=""/>(FTP登陆用户名)</td>
</tr>
<tr>
<tdwidth="30%"align="left"> 旧密码[√]:</td>
<tdwidth="70%"><inputclass="input"type="password"maxlength=20 name="OldPassword"size="25"value=""/>(必须输入旧密码)</td>