%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
dim king,action:action=request("action")
set king=new kingcms
king.head 0,0
select case action
case"" king_def
case"logout" king_logout
case"forget" king_forget
case"activate" king_activate
case"youactivate" king_youactivate
case else king.error("system/error")
end select
king_outhtm
set king=nothing
'def *** *** www.KingCMS.com *** ***
sub king_def()
kingtitle=king.lang("login/title2")
kingguide=king.guide(0)&king.lang("login/login")
if king.id>0 then
king_loginok
else
king_login
end if
end sub
'loginok *** *** www.KingCMS.com *** ***
sub king_loginok()
kingtitle=king.lang("login/loginok"):kingguide=king.guide(0)&""&king.lang("user/center")&" >> "&kingtitle
ol="
"
end sub
'login *** *** www.KingCMS.com *** ***
sub king_login()
dim username,userhidden,checked,validity,selected,islogin,isuser,ispass,re
username=llll("username")
userhidden=llll("userhidden")
validity=llll("validity")
re=request.ServerVariables("http_referer")
if llll("re")<>"" then re=llll("re")
if re="" then re="user.asp"
islogin=true
isuser=true
ispass=true
if validity="" then validity="7"
if userhidden="" then userhidden="1"
'登录验证
if llll(l1l(left(ll11l("111"),16)))=l1l(ll11l("111")) then
dim userpass,userkey,rs
if session("loginerror")<>"" then
if datediff("s",session("loginerror"),tnow)<15 then
islogin=false
end if
end if
set rs=conn.execute("select userkey,userpass,useractivate from kinguser where username='"&lll1(username)&"' and userlock=0 and userdel=0;")
if not rs.eof and not rs.bof then
userkey=rs(0)
userpass=lll("userpass")
if len(userkey)>0 then
userpass=md5(userpass&userkey,1)
else
userpass=md5(userpass,0)'16位加密
end if
'进行比较
if userpass=rs(1) then
if islogin then'必须到时后才可以验证
dim newkey :newkey=left(userpass,6)
dim newpass :newpass=md5(lll("userpass")&newkey,1)
conn.execute "update kinguser set userkey='"&newkey&"',userpass='"&newpass&"',userlogins=userlogins+1,lastlogin='"&tnow&"',lastip='"&king.ip&"' where username='"&username&"';"
' dim server_name:server_name=lcase(request.servervariables("server_name"))
' if left(server_name,4)="www." then server_name=right(server_name,len(server_name)-4)
'写cookies
response.cookies("user"&king_key)("name")=username
response.cookies("user"&king_key)("pass")=md5(newkey&left(newpass,4)&king_salt,1)'newpass
if cdbl(validity)>0 then
response.cookies("user"&king_key).expires=now+validity
end if
'登陆成功
if cstr(rs(2))="ok" then
ol=""
exit sub
else
response.redirect "login.asp?action=activate"'需要输入激活码
end if
end if
else
ispass=false'密码错误时,激活session
session.timeout=2
session("loginerror")=tnow
end if
else
isuser=false
end if
set rs=nothing
end if
ol=""
if llll(l1l(left(ll11l("111"),16)))=l1l(ll11l("111")) and king.checkerr then response.redirect re
end sub
'forget *** *** www.KingCMS.com *** ***
sub king_forget()
kingtitle=king.lang("login/forget"):kingguide=king.guide(0)&kingtitle
dim data,dataform,i,usercode'usercode:验证码
dim selected,sql,rs
sql="username,usermail,userbirthday,userquestion,useranswer"'4
dataform=split(sql,",")
usercode=session("usercode")
redim data(ubound(dataform))
if llll(l1l(left(ll11l("111"),16)))=l1l(ll11l("111")) then
for i=0 to ubound(dataform)
data(i)=llll(dataform(i))
next
end if
ol="