在Global.asax文件里可以设置统计在线人数,可以查询一下msdn!

解决方案 »

  1.   

    <%
    Dim RefreshTime,IdleTime,TotalUsers,OnlineUser(),Tmp(),Num,I,ID
    RefreshTime=10
    IdleTime=RefreshTime*3
    Application.Lock'OnlineUser
    '清点所有联机到此网页的用户,然后将目前的用户名称放入数组的最后面
    If Application(Session.SessionID&"LastAccessTime")=Empty Then
       If Application("TotalUsers")=Empty Then Application("TotalUsers")=0
       ReDim Tmp(Application("TotalUsers")+1)
       Num=0
       If Application("TotalUsers")>0 Then
          For I=LBOUND(Application("OnlineUser"))To UBOUND(Application("OnlineUser"))
         ID=Application("OnlineUser")(I)
     If ID<>Session.SessionID Then
        Tmp(Num)=ID
    Num=Num+1
      End If
       Next
    End If
    Tmp(Num)=Session.SessionID
    Application("TotalUsers")=Num+1   
    ReDim Preserve Tmp(Application("TotalUsers"))
    Application("OnlineUser")=Tmp
    End If
    '记录米前用户的最近存取时间
    Application(Session.SessionID&"LastAccessTime")=Timer'检查所有联机到此网页的用户的最近存取时间,若与目前时间相差30秒以上,表示离线
    ReDim Tmp(Application("TotalUsers"))
    Num=0
    For I=0 To Application("TotalUser")-1
       ID=Application("OnlineUser")(I)
       If(Timer-Application(ID&"LastAccessTime"))<IdleTime Then
          Tmp(Num)=ID
      Num=Num+1
       Else 
         Application(ID&"LastAccessTime") = Empty
       End If
    Next'Num 表示目前在线人数,若与Appliation("TotalUser")不同,表示中间有人离线
    If Num<>Application("TotalUsers") Then
       ReDim Preserve Tmp(Num)
       Application("OnlineUser")=Tmp
       Application("TotalUsers")=Num
    End If
    Application.UnLock
    %><html>
     <head>
       <meta http-equiv="refresh" content="<%= RefreshTime %>, URL=<%= Request.ServerVariables("PATH_INFO")%>">
       </head>
       <body>
         目前在线人数: <%= Application("TotalUsers")%>
    </body>
       </html>
                      书上照扳的,但是在线人数一直是0,不知道怎么会事。
    高人门看看怎么会事。
      

  2.   

    用share memory,具体用法见php manual。
      

  3.   

    给出程序大概的样子:
    Global.asa
               <script language="vbscript">
                  sub application_onstart()
                      application("currentuser")=0 '第一次激活时执行
                  end sub
                  sub session_onstart()
                      application("currentuser")=application("currentuser")+1 
                     '连接时执行
                  end sub
                  sub session_onend()
                       application("currentuser")=application("currentuser")-1 
                       ,退出时执行
                   end sub
                   
                   end sub
                   sub application_onsend() 
                   ,web程序结束是执行
                   sub end
                
           </script>
      

  4.   

    回复feel8(准备早起的鸟) :
    如何来确认,一个用户在指定的时间内没有动作? 谢谢!