<% Dvbbs.LoadTemplates("Usermanager") If Request("t")="1" Then Dvbbs.Stats=Dvbbs.MemberName&template.Strings(2) Else Dvbbs.Stats=Dvbbs.MemberName&template.Strings(3) End If Dvbbs.Nav() Dvbbs.Head_var 0,0,template.Strings(0),"Usermanager.asp" Dim ErrCodes Dim psw,password,oldpassword,quesion,answer,Usercookies If Dvbbs.Userid=0 Then Dvbbs.AddErrCode(6) End If If Cint(Dvbbs.GroupSetting(16))=0 Then Dvbbs.AddErrCode(28) End If Dvbbs.Showerr() Response.write template.html(0) If Request("t")="1" Then Psw_Main() Else Main() End If Dvbbs.ActiveOnline() Dvbbs.Footer() Sub Main() If Request("action")="updat" Then Call update() If ErrCodes<>"" Then Response.redirect "showerr.asp?ErrCodes="&ErrCodes&"&action=OtherErr" Dvbbs.Showerr() Dvbbs.Dvbbs_Suc("
  • "+template.Strings(26)) Else Call Userinfo() Dvbbs.Showerr() End If End Sub Sub Psw_Main() If Request("action")="updat" Then Call Psw_Update() If ErrCodes<>"" Then Response.redirect "showerr.asp?ErrCodes="&ErrCodes&"&action=OtherErr" Dvbbs.Showerr() Dvbbs.Dvbbs_Suc("
  • "+template.Strings(26)) Else Call Psw_Userinfo() Dvbbs.Showerr() End If End Sub Sub userinfo() Dim Rs,Sql,tempstr,userim tempstr=template.html(10) sql="Select Userid,UserEmail,UserIM from [Dv_User] where Userid="&Dvbbs.Userid Set Rs=Dvbbs.Execute(Sql) If Rs.eof And Rs.bof Then Dvbbs.AddErrCode(32) Exit Sub Else tempstr=Replace(tempstr,"{$user_id}",Rs(0)) tempstr=Replace(tempstr,"{$user_email}",Rs(1)&"") If rs(2)="" or isnull(rs(2)) Then tempstr=Replace(tempstr,"{$user_homepage}","") tempstr=Replace(tempstr,"{$user_oicq}","") tempstr=Replace(tempstr,"{$user_icq}","") tempstr=Replace(tempstr,"{$user_Msn}","") tempstr=Replace(tempstr,"{$user_Yahoo}","") tempstr=Replace(tempstr,"{$user_Aim}","") tempstr=Replace(tempstr,"{$user_UC}","") Else userim=split(rs(2),"|||") tempstr=Replace(tempstr,"{$user_homepage}",userim(0)) tempstr=Replace(tempstr,"{$user_oicq}",userim(1)) tempstr=Replace(tempstr,"{$user_icq}",userim(2)) tempstr=Replace(tempstr,"{$user_Msn}",userim(3)) tempstr=Replace(tempstr,"{$user_Aim}",userim(4)) tempstr=Replace(tempstr,"{$user_Yahoo}",userim(5)) tempstr=Replace(tempstr,"{$user_UC}",userim(6)) End If Response.write tempstr End If Rs.Close:Set Rs =Nothing End sub Sub update() Dim Rs,Sql Dim Email,NewUserIM Dim HomePage If Dvbbs.chkpost=False Then Dvbbs.AddErrCode(16) Exit Sub End If Dim userpassword userpassword=Request.form("password") If userpassword="" Then Dvbbs.AddErrCode(11) Exit Sub Else userpassword=md5(userpassword,16) End If '校验密码, SQL="Select userpassword from dv_user where userid="&Dvbbs.UserID&"" Set Rs=Dvbbs.Execute(SQL) If Not Rs.eof Then If Rs(0)<> userpassword Then Response.redirect "showerr.asp?ErrCodes=您输入的密码错误&action=OtherErr" End If Else Response.redirect "showerr.asp?ErrCodes=您输入的密码错误&action=OtherErr" End If Set Rs=Nothing If IsValidEmail(Request.form("Email"))=false Then ErrCodes=ErrCodes+"
  • "+template.Strings(31) 'Dvbbs.AddErrmsg "您的Email有错误。" Exit Sub Else If Not IsNull(Dvbbs.forum_setting(52)) And Dvbbs.forum_setting(52)<>"" And Dvbbs.forum_setting(52)<>"0" Then Dim SplitUserEmail,i SplitUserEmail=split(Dvbbs.forum_setting(52),"|") For i=0 to ubound(SplitUserEmail) If instr(Request.form("email"),SplitUserEmail(i))>0 Then ErrCodes=ErrCodes+"
  • "+template.Strings(32) 'Dvbbs.AddErrmsg "您填写的Email地址含有系统禁止字符。" Exit Sub End If Next End If Email=Dvbbs.checkstr(Request.form("Email")) End If If Trim(Request.Form("Oicq")) <> "" Then If Not IsNumeric(Trim(Request.form("Oicq"))) or Len(Trim(Request.Form("Oicq"))) > 12 Then Dvbbs.AddErrCode(18) Exit Sub End If End If If Trim(Request.Form("Icq")) <> "" Then If Not IsNumeric(Trim(Request.Form("Icq"))) Or Len(Trim(Request.Form("Icq"))) > 12 Then Dvbbs.AddErrCode(18) Exit Sub End If End If '主页加http://开头 2004-10-7 Dv.Yz HomePage = Trim(Request.Form("homepage")) If Not (Left(HomePage, 7) = "http://" Or HomePage = "") Then HomePage = "http://" & HomePage 'HomePage,UserOicq,UserIcq,UserMsn,UserAim,UserYahoo,UserUC NewUserIM = HomePage & "|||" & Trim(Request.Form("Oicq")) & "|||" & Trim(Request.Form("Icq")) & "|||" & Request.Form("Msn") & "|||" & Request.Form("UserAim") & "|||" & Request.Form("Yahoo") & "|||" & Request.Form("UC") NewUserIM = Dvbbs.Checkstr(NewUserIM) 'update data Sql = "UPDATE [Dv_User] SET UserEmail = '" & Email & "', UserIM = '" & NewUserIM & "' WHERE Userid = " & Dvbbs.Userid & "" Set Rs = Dvbbs.Execute(Sql) End Sub Sub Psw_Userinfo() If Dvbbs.chkpost=False Then Dvbbs.AddErrCode(16) Exit Sub End If Dim Rs,Sql,tempstr tempstr=template.html(9) Sql="Select Userid,UserAnswer,UserQuesion from [Dv_User] where Userid="&Dvbbs.Userid Set Rs=Dvbbs.Execute(Sql) If Rs.eof And Rs.bof Then Dvbbs.AddErrCode(32) Exit Sub Else tempstr=Replace(tempstr,"{$user_id}",Rs(0)) tempstr=Replace(tempstr,"{$user_answer}",Rs(1) & "") tempstr=Replace(tempstr,"{$user_quesion}",Rs(2) & "") tempstr=Replace(tempstr,"{$color}",Dvbbs.mainsetting(1)) Response.write tempstr End If Rs.Close:Set Rs=Nothing End Sub Sub Psw_Update() Dim Rs,Sql Sql="Select Userpassword from [Dv_User] where Userid="&Dvbbs.Userid Set Rs=Dvbbs.Execute(Sql) If Rs.Eof And Rs.Bof Then Dvbbs.AddErrCode(32) Else If Request.Form("oldpsw")="" Then ErrCodes=ErrCodes+"
  • "+template.Strings(27)'Dvbbs.AddErrMsg "请输入您的旧密码,才能完成修改。" ElseIf md5(trim(Request.Form("oldpsw")),16)<>trim(RS("Userpassword")) then ErrCodes=ErrCodes+"
  • "+template.Strings(28)'Dvbbs.AddErrMsg "输入的旧密码错误,请重新输入。" Else oldpassword=Request.Form("oldpsw") End If If Request.Form("psw")<>"" Then password=md5(Request.Form("psw"),16) Else password=RS("Userpassword") End If If Request.Form("quesion")="" Then ErrCodes=ErrCodes+"
  • "+template.Strings(29)'Dvbbs.AddErrMsg "请输入密码提示问题。" Else quesion=Request.Form("quesion") End If If Request.Form("answer")="" Then ErrCodes=ErrCodes+"
  • "+template.Strings(30)'Dvbbs.AddErrMsg "请输入密码提示问题答案。" ElseIf Request.Form("answer")=Request.Form("oldanswer") Then answer=Request.Form("answer") Else answer=md5(Request.Form("answer"),16) End If End If If ErrCodes<>"" Then Exit sub Dvbbs.Showerr() Set Rs=Server.Createobject("Adodb.Recordset") Sql="Select * from [Dv_User] where Userid="&Dvbbs.Userid Rs.Open Sql,Conn,1,3 If Rs.Eof And Rs.Bof Then Dvbbs.AddErrCode(32) Exit Sub Else 'If Not Dvbbs.FoundIsChallenge Then Rs("Userpassword")=password Rs("UserQuesion")=quesion Rs("UserAnswer")=answer Rs.Update End If Rs.Close:set Rs=Nothing End Sub %>