|
re:问题一:可以实现!实现代码
问题一:可以实现!<br>
实现代码<br>
<%<br>
Response.ExpiresAbsolute = Now() - 1<br>
Response.Expires = 0<br>
Response.CacheControl = "no-cache"<br>
%><br>
<br>
<%<br>
hname=Request.ServerVariables ("http_host")<br>
<br>
<br>
if left(hname,4)="www." then<br>
hname=right(hname,len(hname)-4)<br>
end if<br>
<br>
if left(hname,5)="mail." then<br>
hname=right(hname,len(hname)-5)<br>
end if<br>
<br>
if instr(1,request("username"),"@")>0 and instr(1,request("username"),".")>0 then<br>
un = trim(request("username"))<br>
else<br>
un = trim(request("username")) & "@" & hname<br>
end if<br>
<br>
if request("username") = "admin" then <br>
un="admin"<br>
end if<br>
<br>
pw = trim(request("pwhidden"))<br>
saveUser = trim(request("saveUser"))<br>
cleancookies = trim(request("cleancookies"))<br>
<br>
if cleancookies = "true" then<br>
Response.Cookies("accounts") = ""<br>
end if<br>
<br>
showaccounts = trim(request.Cookies("accounts"))<br>
<br>
Response.Cookies("name") = ""<br>
dim ei<br>
dim errmsg<br>
errmsg = trim(request("errstr"))<br>
<br>
<br>
if IsEmpty(Application("em_MaxMPOP3")) and IsEmpty(Application("em_MaxSigns")) then<br>
dim mam<br>
set mam = server.createobject("easymail.AdminManager")<br>
<br>
tmp_num = 0<br>
do while tmp_num < 30<br>
mam.LoadExt<br>
<br>
if mam.IsLoadOK = true then<br>
Exit Do<br>
end if<br>
<br>
mam.Sleep 500<br>
tmp_num = tmp_num + 1<br>
loop<br>
<br>
if mam.IsLoadOK = true then<br>
Application("em_MaxMPOP3") = mam.MaxMPOP3<br>
Application("em_MaxSigns") = mam.MaxSigns<br>
Application("em_SystemAdmin") = LCase(mam.SystemAdmin)<br>
Application("em_EnableBBS") = mam.EnableBBS<br>
Application("em_Enable_SignHold") = mam.Enable_SignHold<br>
Application("em_Enable_FreeSign") = mam.Enable_FreeSign<br>
Application("em_Enable_SignWithDomainUser") = mam.Enable_SignWithDomainUser<br>
Application("em_Enable_SignNumberLimit") = mam.Enable_SignNumberLimit<br>
Application("em_SignNumberLimitDays") = mam.SignNumberLimitDays<br>
Application("em_Enable_ShareFolder") = mam.Enable_ShareFolder<br>
Application("em_Enable_SignEnglishName") = mam.Enable_SignEnglishName<br>
Application("em_LogPageKSize") = mam.LogPageKSize<br>
Application("em_TestAccounts") = LCase(mam.TestAccounts)<br>
Application("em_SignMode") = mam.SignMode<br>
Application("em_SignWaitDays") = mam.SignWaitDays<br>
Application("em_am_Name") = mam.am_Name<br>
Application("em_am_Accounts") = LCase(mam.am_Accounts)<br>
Application("em_AccountsAdmin") = LCase(mam.AccountsAdmin)<br>
<br>
Application("em_EnableTrap") = mam.EnableTrap<br>
if mam.EnableTrap = true then<br>
Application("em_TrapMail") = mam.TrapMail<br>
end if<br>
<br>
set mam = nothing<br>
else<br>
set mam = nothing<br>
response.redirect "outerr.asp?errstr=" & Server.URLEncode("超时, 请重试") & "&" & getGRSN()<br>
end if<br>
end if<br>
<br>
<br>
if un <> "" and pw <> "" and Request.ServerVariables("REQUEST_METHOD") = "POST" then<br>
un = LCase(un)<br>
pw = strDecode(pw, trim(request("picnum")))<br>
<br>
<br>
if un <> Application("em_SystemAdmin") then<br>
dim webkill<br>
set webkill = server.createobject("easymail.WebKill")<br>
webkill.Load<br>
<br>
rip = Request.ServerVariables("REMOTE_ADDR")<br>
<br>
if webkill.IsKill(rip) = true then<br>
set webkill = nothing<br>
response.redirect "outerr.asp?errstr=" & Server.URLEncode("拒绝IP地址 " & rip & " 访问") & "&" & getGRSN()<br>
end if<br>
<br>
set webkill = nothing<br>
end if<br>
<br>
<br>
set ei = Application("em")<br>
Session("wem") = ""<br>
Session("mail") = ""<br>
Session("tid") = ""<br>
Session("SecEx") = ""<br>
Session("scpw") = ""<br>
Session("cert_ca") = ""<br>
<br>
<br>
dim pwwt<br>
pwwt = ei.PassWordWaitMinute<br>
<br>
dim checkret<br>
checkret = ei.CheckPassWordEx(un, pw, Request.ServerVariables("REMOTE_ADDR"))<br>
<br>
if checkret = 0 then<br>
if un = Application("em_SystemAdmin") and ei.CheckAdminIP(Request.ServerVariables("REMOTE_ADDR")) = false then<br>
set ei = nothing<br>
<br>
errmsg = "管理员登录IP地址错误。"<br>
else<br>
Session("tid") = ei.Login(un)<br>
Session("wem") = un<br>
Session("mail") = ei.GetUserMail(un)<br>
set ei = nothing<br>
<br>
dim mri<br>
set mri = server.createobject("easymail.MoreRegInfo")<br>
mri.LoadRegInfo un<br>
mri.CurrentlyIP = Request.ServerVariables("REMOTE_ADDR")<br>
mri.SaveRegInfo<br>
set mri = nothing<br>
<br>
<br>
if saveUser = "true" then<br>
Response.Cookies("accounts") = un<br>
Response.Cookies("accounts").Expires = DateAdd("y", 5, Now())<br>
end if<br>
<br>
SecEx = trim(request("SecEx"))<br>
if SecEx = "true" then<br>
Session("SecEx") = "1"<br>
else<br>
Session("SecEx") = "0"<br>
end if<br>
<br>
<br>
dim userweb<br>
set userweb = server.createobject("easymail.UserWeb")<br>
userweb.Load Session("wem")<br>
<br>
ShowLanguage = userweb.ShowLanguage<br>
<br>
set userweb = nothing<br>
<br>
if ShowLanguage = 1 then<br>
Response.Redirect "en/welcome.asp"<br>
else<br>
Response.Redirect "welcome.asp"<br>
end if<br>
end if<br>
elseif checkret = 2 then<br>
set ei = nothing<br>
<br>
errmsg = "连续三次输入密码错误,请过" & pwwt & "分钟后再试。"<br>
else<br>
set ei = nothing<br>
<br>
errmsg = "错误的用户名或密码!请再次输入。"<br>
end if<br>
end if<br>
<br>
if trim(request("logout")) = "true" then<br>
if Session("wem") <> "" then<br>
Application("em").Logout Session("wem"), Session("tid")<br>
end if<br>
<br>
Session("wem") = ""<br>
Session("mail") = ""<br>
Session("tid") = ""<br>
Session("SecEx") = ""<br>
Session("scpw") = ""<br>
Session("cert_ca") = ""<br>
end if<br>
%><br>
<br>
<html><br>
<head><br>
<META HTTP-EQUIV="Content-Type" content="text/html; charset=gb2312"><br>
<title><% = hname %> 电子邮局</title><br>
<link href="image2006/2006.css" rel="stylesheet" type="text/css"><br>
<br>
<SCRIPT LANGUAGE=javascript><br>
<!--<br>
if (top.location !== self.location) {<br>
top.location=self.location;<br>
}<br>
<br>
function window_onload() {<br>
<%<br>
if errmsg <> "" then<br>
%><br>
alert("<%=errmsg %>");<br>
<%<br>
end if<br>
<br>
if showaccounts = "" then<br>
%><br>
var S = document.getElementById("usernameshow");<br>
S.focus();<br>
<%<br>
else<br>
%><br>
var S = document.getElementById("pwshow");<br>
S.focus();<br>
<%<br>
end if<br>
%><br>
}<br>
<br>
function gook() {<br>
var S;<br>
<%<br>
if showaccounts = "" then<br>
%><br>
S = document.getElementById("usernameshow");<br>
if (S.value == "")<br>
{<br>
alert("用户名不可为空");<br>
S.focus();<br>
return ;<br>
}<br>
<%<br>
end if<br>
%><br>
S = document.getElementById("pwshow");<br>
if (S.value == "")<br>
{<br>
alert("密码不可为空");<br>
S.focus();<br>
return ;<br>
}<br>
<br>
<%<br>
if showaccounts = "" then<br>
%><br>
S = document.getElementById("usernameshow");<br>
document.f1.username.value = S.value;<br>
<br>
S = document.getElementById("showsaveUser");<br>
document.f1.saveUser.value = S.checked;<br>
<%<br>
else<br>
%><br>
document.f1.username.value = "<%=showaccounts %>";<br>
<%<br>
end if<br>
%><br>
S = document.getElementById("showSecEx");<br>
document.f1.SecEx.value = S.checked;<br>
<br>
S = document.getElementById("pwshow");<br>
document.f1.pwhidden.value = encode(S.value, parseInt(document.f1.picnum.value));<br>
<br>
document.f1.submit();<br>
}<br>
<br>
function encode(datastr, bassnum) {<br>
var tempstr;<br>
var tchar;<br>
var newdata = "";<br>
<br>
for (var i = 0; i < datastr.length; i++)<br>
{<br>
tchar = 65535 + bassnum - datastr.charCodeAt(i);<br>
tchar = tchar.toString();<br>
<br>
while(tchar.length < 5)<br>
{<br>
tchar = "0" + tchar;<br>
}<br>
<br>
newdata = newdata + tchar;<br>
}<br>
<br>
return newdata;<br>
}<br>
//--><br>
</SCRIPT><br>
</head><br>
<br>
<body LANGUAGE=javascript onLoad="return window_onload()"><br>
<form name="f1" method="post" action="default.asp"><br>
<input type="hidden" name="username"><br>
<input type="hidden" name="pwhidden"><br>
<input type="hidden" name="picnum" value="<%=createRnd() %>"><br>
<input type="hidden" name="saveUser"><br>
<input type="hidden" name="SecEx"><br>
</form><br>
<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"><br><tr><br><td height="150" colspan="2"></td><br></tr><br><tr><br><td width="750" height="237" valign="middle" background="image2006/1024.gif"><table width="300" border="0" align="right" cellpadding="0" cellspacing="0"><br>
<tr><br>
<td align="center"><br>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0"><br>
<tr><br><td height="30"><img src="image2006/button_70.gif" width="71" height="25"></td><br><td align="left"><br>
<% if showaccounts = "" then %><br>
<input type="text" id="usernameshow" name="usernameshow" maxlength="64" class="input01"> <br>
@<%= hname %><input name="hname" type="hidden" id="hname" value="@<%=hname%>"><br>
<% else %><br>
<b><%=showaccounts %></b><br>
<% end if %></td><br></tr><br><tr><br><td height="30"><img src="image2006/button_72.gif" width="71" height="25"></td><br><td width="220"><input type="password" id="pwshow" name="pwshow" maxlength="32" class="input01"></td><br></tr><br></table><br>
</td><br>
</tr><br>
<% if showaccounts = "" then %> <br>
<tr><br><td width="300" height="25" align="center"><br><input type="checkbox" id="showSecEx" name="showSecEx">增强安全性<br>
<input type="checkbox" id="showsaveUser" name="showsaveUser">记住用户名</td><br></tr><br>
<%<br>
else<br>
%><br><tr><br><td height="25" align="center"><br><input type="checkbox" id="showSecEx" name="showSecEx">增强安全性<br>
<a href="default.asp?cleancookies=true">改用其他身份登录</a></td><br></tr><br>
<%<br>
end if<br>
%><br><tr><br><td height="25" align="center"><%<br>
if Application("em_Enable_FreeSign") = true then<br>
%>[<b><a href="create.asp?<%=getGRSN() %>">申请邮箱</a></b>]<%<br>
end if<br>
%>[<b><a href="forgetbf.asp?<%=getGRSN() %>">忘记密码</a></b>]</td><br></tr><br><tr><br><td align="center"><input type=image onClick="javascript:gook()" value=" 确定 " src="image2006/button_74.gif"></td><br></tr><br></table></td><br><td width="243" height="237" valign="top" background="image2006/10240.gif"></td><br></tr><br><tr><br><td colspan="2" valign="top"><br>
<table width="320" border="0" align="center" cellpadding="0" cellspacing="8"><br><tr> <br><td>本系统支持WEB或者POP3收发邮件<br><br>如果要使用Foxmail等软件收发邮件<br><br>请注意 SMTP服务器和 POP3服务器都是mail.<%= hname %><br><br>而用户名要填 user@<%= hname %><br><br>帐户添加完毕后,还需进行smtp认证设置,以Foxmail为例<br> <br>进入Foxmail帐户—属性,在弹出的帐户属性邮件服务器设置窗口中,在“SMTP服务器需要身份验证”前打勾</td><br></tr><br></table><br>
</td><br></tr><br>
</table><br>
<br>
<%<br>
if Application("em_EnableTrap") = true then<br>
%><br>
<div style="position:absolute; top:0; left:0; z-index:0; visibility:hidden"><br>
<a href="mailto:<%=Application("em_TrapMail") %>"><%=Application("em_TrapMail") %></a><br>
</div><br>
<%<br>
end if<br>
%><br>
<%<br>
function getGRSN()<br>
dim theGRSN<br>
Randomize<br>
theGRSN = Int((9999999 * Rnd) + 1)<br>
<br>
getGRSN = "GRSN=" & CStr(theGRSN)<br>
end function<br>
<br>
function createRnd()<br>
dim retval<br>
retval = getGRSN()<br>
<br>
if Len(retval) > 4 then<br>
retval = Right(retval, 4)<br>
end if<br>
<br>
if Left(retval, 1) = "0" then<br>
retval = "5" & Right(retval, 3)<br>
end if<br>
<br>
createRnd = retval<br>
end function<br>
<br>
function strDecode(sd_Data, sd_bassnum)<br>
dim sd_vChar<br>
dim sd_NewData<br>
dim sd_TempChar<br>
sd_vChar = 1<br>
<br>
do<br>
if sd_vChar > Len(sd_Data) then<br>
exit do<br>
end if<br>
<br>
sd_TempChar = CLng(Mid(sd_Data, sd_vChar, 5))<br>
sd_TempChar = ChrW(65535 + sd_bassnum - sd_TempChar)<br>
<br>sd_NewData = sd_NewData & sd_TempChar<br>
sd_vChar = sd_vChar + 5<br>
loop<br>
<br>
strDecode = sd_NewData<br>
end function<br>
%><br>
</body><br>
</html><br>
也可以联系我,给你文件<br>
<br>
问题二:能改变。需登录服务器,进入winweb控制台菜单——工具——帐号类型转换,选择需要转换的帐号进行转换就可以了!<br>
|
|