ot;UserID")(0)="Dvbbs" Then ''''修正防刷新的问题,轻飘飘 If Cint(Session(CacheName & "UserID")(19)) <> Cint(Split(MyUserInfo,"|||")(15)) Then FoundMyGroupID = Cint(Session(CacheName & "UserID")(19)) If FoundMyGroupID > 0 Then MyUserInfo = "Dvbbs|||"& Session(CacheName & "UserID")(1) & "|||"& Session(CacheName & "UserID")(2) &"|||"& BoardID &"|||"& MyUserInfo &"|||"&FoundUserPermission_All()&"|||"&Split(MyUserInfo,"|||")(15)&"|||"& Session(CacheName & "UserID")(Ubound(Session(CacheName & "UserID"))-1) &"|||Dvbbs" Else MyUserInfo = "Dvbbs|||"& Session(CacheName & "UserID")(1) & "|||"& Session(CacheName & "UserID")(2) &"|||"& BoardID &"|||"& MyUserInfo &"|||"&FoundUserPermission_All()&"|||0|||"& Session(CacheName & "UserID")(Ubound(Session(CacheName & "UserID"))-1) &"|||Dvbbs" End If Else MyUserInfo = "Dvbbs|||"& Now & "|||" & DateAdd("s",-3600,Now()) &"|||"& BoardID &"|||"& MyUserInfo &"|||"&FoundUserPermission_All()&"|||0||||||Dvbbs" End If Else MyUserInfo = "Dvbbs|||"& Now & "|||" & DateAdd("s",-3600,Now()) &"|||"& BoardID &"|||"& MyUserInfo &"|||"&FoundUserPermission_All()&"|||0||||||Dvbbs" End If Rs.Close:Set Rs = Nothing MyUserInfo = Split(MyUserInfo,"|||") If FoundMyGroupID > 0 Then MyUserInfo(19) = FoundMyGroupID If Trim(MyUserInfo(35)) = Memberword And Trim(MyUserInfo(5)) =Membername Then Session(CacheName & "UserID") = MyUserInfo Memberword = MyUserInfo(35) GetCacheUserInfo() Else If IsArray(Session(CacheName & "UserID")) Then If Session(CacheName & "UserID")(0)="Dvbbs" Then If Trim(Session(CacheName & "UserID")(4))=Trim(MyUserInfo(4)) And Trim(Session(CacheName & "UserID")(5))=Trim(MyUserInfo(5)) And Trim(Session(CacheName & "UserID")(6))=Trim(MyUserInfo(6)) Then If Request.ServerVariables("QUERY_STRING")<>"" Then Session("LoadCache")=ScriptName&"?"&Request.ServerVariables("QUERY_STRING") Else Session("LoadCache")=ScriptName End If Response.Redirect "newpass.asp" End If Else UserID = 0 EmptyCookies LetGuestSession() End If Else UserID = 0 EmptyCookies LetGuestSession() End If End If End If End Sub ''''用户登录成功后,采用本函数读取用户数组并判断一些常用信息 Public Sub GetCacheUserInfo() MyUserInfo = Session(CacheName & "UserID") UserInfoCount = Ubound(Session(CacheName & "UserID")) UserID = Clng(MyUserInfo(4)) MemberName = MyUserInfo(5) Lastlogin = MyUserInfo(15) If Not IsDate(LastLogin) Then LastLogin = Now() UserGroupID = Cint(MyUserInfo(19)) If Trim(MyUserInfo(36))="" Then Execute("Update [Dv_User] Set UserToday=''''0|0|0|0|0'''' Where UserID = " & UserID) MyUserInfo(36) = "0|0|0|0|0" UserToday = Split(MyUserInfo(36),"|") Else UserToday = Split(MyUserInfo(36),"|") If Ubound(UserToday) <> 4 Then Execute("Update [Dv_User] Set UserToday=''''0|0|0|0|0'''' Where UserID = " & UserID) MyUserInfo(36) = "0|0|0|0|0" UserToday = Split(MyUserInfo(36),"|") End If End If ''''判断是否VIP组成员 If Not IsNull(MyUserInfo(41)) or MyUserInfo(41)<>"" Then If IsDate(MyUserInfo(41)) Then If DateDiff("d",Now(),MyUserInfo(41))>0 Then VipGroupUser = True Else Dim tRs ''''将已过期的VIP用户移回注册组并清空有效时间 If UserGroupID>8 Then Set tRs=Execute("Select Top 1 * From Dv_UserGroups Where ParentGID=3 And MinArticle<="&MyUserInfo(8)&" Order By MinArticle Desc") If not tRs.Eof Then Execute("Update Dv_User Set UserClass=''''"&tRs("UserTitle")&"'''',TitlePic=''''"&tRs("GroupPic")&"'''',UserGroupID="&tRs("UserGroupID")&",Vip_StarTime=null,Vip_EndTime=null Where UserID="&UserID) End If Set tRs=Nothing Else Execute("Update Dv_User Set Vip_StarTime=null,Vip_EndTime=null Where UserID="&UserID) End If MyUserInfo(40) = "" MyUserInfo(41) = "" Session(CacheName & "UserID") = MyUserInfo End If End If End If Select Case UserGroupID Case 8 Vipuser = True Case 3 Boardmaster = True Case 2 Superboardmaster = True Case 1 Master = True End Select If MyUserInfo(31) = "1" Then FoundIsChallenge = True If DateDiff("d",LastLogin,Now())<>0 Then Execute("Update [Dv_User] Set UserToday=''''0|0|0|0|0'''',LastLogin = " & SqlNowString & " Where UserID = " & UserID) MyUserInfo(36) = "0|0|0|0|0" LastLogin = Now() End If If Userhidden = 2 and DateDiff("s",Lastlogin,Now())>Clng(Forum_Setting(8))*60 Then Execute("Update [Dv_User] Set UserLastIP = ''''" & UserTrueIP & "'''',LastLogin = " & SqlNowString & " Where UserID = " & UserID) Lastlogin = Now() End If sendmsgnum=0:sendmsgid=0:sendmsguser="" If MyUserInfo(30)<>"" Then Dim Usermsg Usermsg=Split(MyUserInfo(30),"||") If Ubound(Usermsg)=2 Then sendmsgnum=Usermsg(0) sendmsgid=Usermsg(1) sendmsguser=Usermsg(2) End If End If If IsNull(MyUserInfo(39)) Then MyUserInfo(39)="" Else MyUserInfo(39) = Replace(Trim(MyUserInfo(39))&"",Chr(13),"") End If ''''跟踪用户处理 If MyUserInfo(39)<>"" Then Dim ToolsFollowUserID,i,Rs,Tools_inceptid,Tools_newincept,Tools_msginfo ToolsFollowUserID = Split(MyUserInfo(39),",") For i=0 To Ubound(ToolsFollowUserID) If Len(ToolsFollowUserID(i))>0 and Len(ToolsFollowUserID(i))<50 and ToolsFollowUserID(i)<>"" Then ToolsFollowUserID(i) = CheckStr(ToolsFollowUserID(i)) Execute("Insert into Dv_Message (incept,sender,title,content,sendtime,flag,issend) values (''''"& ToolsFollowUserID(i)&"'''',''''系统消息'''',''''您跟踪的用户"&Dvbbs.MemberName&"已登录'''',''''您使用了论坛道具“狗仔队上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >> |