1. 论坛系统升级为Xenforo,欢迎大家测试!
    Dismiss Notice

用户登陆的问题,有没有比较好的解决办法

Discussion in '后端开发' started by notnull, Apr 1, 2006.

  1. notnull

    notnull New Member

    Joined:
    Sep 27, 2005
    Messages:
    11,720
    Likes Received:
    37
    现在写的程序,用户登陆有了一点问题,当时为了限制一个ID在有一个人登陆的情况下,就不允许再在其他的地方登陆,所以,我用下面的代码控制了,但问题来了,在正常情况下退出之后再立即登陆没问题,直接关掉IE也可以在一分钟之后登陆系统,但是,一旦IE死掉,用任务管理器直接关掉线程,就释放不掉原来登陆的的信息,不重启电脑是登陆不了的,不知道大家有没有什么办法解决,我贴出那段检测登陆的代码:

    Code:
    <SCRIPT LANGUAGE="VBScript" RUNAT="Server">
    
    
    Sub Application_OnStart
       
       Redim useronline(0)
       useronline(0) =""
    
      application("online") =useronline
    
    
    End Sub
    
    
    
    
    Sub Session_OnStart
    
      Session.Timeout =1
    
    End Sub
    
    
    
    
    Sub Session_OnEnd()
    
                   userreg =session("logininfo")
    			   
                    
                    application.lock
    
                     useronline =application("online")
    
                      for i =0 to ubound(useronline)
    
                        if useronline(i) <>"" then
                           if useronline(i) =userreg(0,1) then useronline(i) =""
    					end if
    
                      next
    
                     application("online") =useronline
      
                   application.unlock
    End Sub
    
    
    Sub Application_OnEnd
    
          application.lock
    
           application("online") =""
    
          application.unlock
    
    
    End Sub
    
    </SCRIPT>
     
  2. Function

    Function New Member

    Joined:
    Mar 24, 2006
    Messages:
    3,884
    Likes Received:
    5
    IE 非正常退出,Session 需要系统默认的超时时间之后才可以释放吧。
     
  3. Tameway

    Tameway New Member

    Joined:
    Sep 6, 2005
    Messages:
    1,286
    Likes Received:
    8
    默认为4分钟