CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  ASP

怎样用asp获得网站的在线人数呢???

楼主liumanman521(Hyekyo)2004-02-02 13:47:24 在 Web 开发 / ASP 提问

请问:怎样用asp获得网站的在线人数呢??? 问题点数:30、回复次数:10Top

1 楼citybird888(在下随风,随处风流的风!)回复于 2004-02-02 13:59:29 得分 0

配置gobla.asa文件Top

2 楼51windows(海娃)回复于 2004-02-02 13:59:57 得分 5

在网站的根目录中放置以下内容的   Global.asa   文件,  
   
  将语句   <%   response.write   "现在有   "   &   Application("WhosOn")   &   "   人在线。"   %>   放在你的   ASP   网页中用于显示在线人数。  
  Global.asa的内容如下:、  
   
  <SCRIPT   LANGUAGE="VBScript"   RUNAT="Server">    
          Sub   Application_OnStart  
                  Session.Timeout=1  
                  Application.Lock  
                  Application("WhosOn")   =   0  
                  Application.UnLock  
          End   Sub  
   
          Sub   Session_OnStart  
                  Application.Lock  
                  Application("WhosOn")   =   Application("WhosOn")   +   1  
                  Application.UnLock  
          End   Sub  
   
          Sub   Session_OnEnd  
                  Application.Lock  
                  Application("WhosOn")   =   Application("WhosOn")   -   1  
                  Application.UnLock  
          End   Sub  
  </SCRIPT>    
   
  ----------------  
  http://www.51windows.netTop

3 楼cnstu(@_NetBoy)回复于 2004-02-02 14:00:58 得分 0

关注,顶一下Top

4 楼citybird888(在下随风,随处风流的风!)回复于 2004-02-02 14:05:11 得分 5

在global里写:  
  sub   session_onstart  
   
  application.lock  
  if   application("ol_sum")=""   then  
        application("ol_sum")=1  
  else  
        application("ol_sum")=application("ol_sum")+1  
  end   if  
  application.unlock  
  end   sub  
  sub   session_onend  
  application.lock  
  application("ol_sum")=application("ol_sum")-1  
  application.unlock  
  end   sub  
  Top

5 楼yxhhuihui(易寒)回复于 2004-02-02 14:15:12 得分 0

楼上的注意了:  
  Sub   Session_OnEnd里的脚本是不会执行的了,Top

6 楼241219(太阳之子)回复于 2004-02-02 14:25:02 得分 10

以下是本站用的计算在线的程序,望指址:http://www.fsyyy.com  
   
  <SCRIPT   LANGUAGE="VBScript"   RUNAT="Server">    
   
       
    Sub   Application_OnStart  
      '置网站计数器初值  
        Application("activeusers")   =   0  
        Application("maxusers")   =   0  
        Application("timestamp")=   24  
      '读取网站浏览量初始值  
        countfile=server.mappath("/webcount.txt")  
        Set   fs=CreateObject("Scripting.FileSystemObject")  
        Set   thisfile=fs.OpenTextFile(countfile,1,false,false)  
        Application("webvisitors")=thisfile.readline  
        thisfile.close  
        set   fs=nothing  
   
    End   Sub  
   
    Sub   Session_OnStart  
        Application("activeusers")=Application("activeusers")+1  
        Application("webvisitors")=Application("webvisitors")+1  
        if   Application("activeusers")>Application("maxusers")   then  
          Application("maxusers")=Application("activeusers")  
        End   if  
        Session.LCID=2052  
        Session.timeout=10  
        Session("sysmess")="欢迎进入佛山市第一人民医院网站   http://www.fshospital.org.cn"  
        Session("userid")=""  
        Session("username")=""  
        Session("netname")=""  
        Session("userstat")="0"  
        Session("permission")=""  
        Set   Session("webconn")   =   Server.CreateObject("ADODB.Connection")  
        Session("webconn").Open     //数据源自己的  
        Set   Session("webrec")     =   Server.CreateObject("ADODB.Recordset")  
   
        If   Application("timestamp")<>Hour(Now)   then  
          '写webcount.txt  
          countfile=server.mappath("/webcount.txt")  
          Set   fs=CreateObject("Scripting.FileSystemObject")  
          Set   thisfile=fs.CreateTextFile(countfile,true,false)  
          thisfile.WriteLine(Application("webvisitors"))  
          thisfile.close  
          set   fs=nothing  
          '写数据库  
          dim   sqlrec,vdate,yesterday,ctot,tcounter,wfield,hnow  
          ctot=0  
          If   Application("timestamp")>Hour(Now)   then  
              yesterday=year(date-1)&"-"&month(date-1)&"-"&day(date-1)  
              '昨日汇总  
              SQLrec   =   "SELECT   *   FROM   table   where   字段='"&yesterday&"'"  
              Application.Lock  
              Session("webrec").Open   sqlrec,session("webconn"),3,3  
              If   Session("webrec").EOF   then  
                Session("webrec").Addnew  
                Session("webrec")("vdate")   =yesterday  
                Session("webrec")("weekname")   =Mid("日一二三四五六",Weekday(yesterday),1)  
                Session("webrec")("intnum")=Application("webvisitors")  
                Session("webrec")("maxonline")   =Application("maxusers")  
              End   if  
              If   Session("webrec")("visitnum")=0   then  
                Session("webrec")("visitnum")     =Application("webvisitors")-Session("webrec")("intnum")  
                Session("webrec")("maxonline")   =Application("maxusers")  
                Session("webrec")("avenumaday")=(Application("webvisitors")-Session("webrec")("intnum"))/24  
              End   if  
              '先计算0点前点击率  
              For   Tcounter=1   to   23  
                wfield="time"&CStr(Tcounter)  
                ctot=ctot+Session("webrec")(wfield)  
              Next  
              ctot=Application("webvisitors")-   Session("webrec")("intnum")-ctot  
              Session("webrec").Update  
              Application.Unlock  
              Session("webrec").Close  
   
              '添加当日新记录  
              Application.Lock  
              SQLrec   =   "SELECT   *   FROM   table   where   vdate='"&year(date)&"-"&month(date)&"-"&day(date)&"'"  
              Session("webrec").Open   sqlrec,session("webconn"),3,3  
              If   Session("webrec").EOF   then  
                Session("webrec").Addnew  
                Session("webrec")("Vdate")   =date  
                Session("webrec")("weekname")   =Mid("日一二三四五六",Weekday(date),1)  
                Session("webrec")("intnum")=Application("webvisitors")  
                '录入昨天最后一小时的点击率  
                Session("webrec")("time0")   =ctot  
                Session("webrec").Update  
              End   if  
              Application.Unlock  
        Session("webrec").Close  
              '当日最大在线人数清零  
              Application("maxusers")   =   Application("activeusers")  
          End   If  
          '每小时记录一次访问情况  
          SQLrec   =   "SELECT   *   FROM   table   where   vdate='"&year(date)&"-"&month(date)&"-"&day(date)&"'"  
          Session("webrec").Open   sqlrec,session("webconn"),3,3  
          Application.Lock  
          if   Session("webrec").EOF   then  
              Session("webrec").Addnew  
              Session("webrec")("Vdate")   =date  
              Session("webrec")("weekname")   =Mid("日一二三四五六",Weekday(date),1)  
              Session("webrec")("intnum")=Application("webvisitors")  
              '录入昨天最后一小时的点击率  
              Session("webrec")("time0")   =ctot  
          end   if  
          wfield="time"&CStr(hour(Now))  
          if   hour(Now)>0   and   Session("webrec")(wfield)<=0   then  
            Ctot     =0  
            For   Tcounter=1   to   (hour(Now))  
                wfield="time"&CStr(Tcounter)  
                Ctot=Ctot+Session("webrec")(wfield)  
            Next  
            Session("webrec")(wfield)=Application("webvisitors")-   Session("webrec")("intnum")-Ctot  
          end   if  
          Session("webrec").Update  
          Application.unlock  
  Session("webrec").Close  
          '标记重置  
          Application("timestamp")=Hour(Now)  
        End   if  
    End   sub  
   
    Sub   Session_OnEnd  
        Application("activeusers")=Application("activeusers")-1  
    End   sub  
   
    Sub   Application_OnEnd  
          '即时记录当前访问人数  
          countfile=server.mappath("/webcount.txt")  
          Set   fs=CreateObject("Scripting.FileSystemObject")  
          Set   thisfile=fs.CreateTextFile(countfile,true,false)  
          thisfile.WriteLine(Application("webvisitors"))  
          thisfile.close  
          set   fs=nothing  
    End   Sub    
   
  </SCRIPT>    
  Top

7 楼241219(太阳之子)回复于 2004-02-02 14:26:14 得分 0

但是人数多的时候会消耗系统大量的资源!Top

相关问题

  • ASP实现在线人数的错误
  • 程序怎么获得Media Server的在线人数
  • 请教ASP怎么显示当前在线人数?
  • 关于ASP在线人数统计的问题??
  • asp。net中怎样实现在线人数的统计
  • 谁知道asp页面统计在线人数是什么原理
  • 怎么用能让asp实现统计在线人数的功能。在线等待!!!帮忙送分!
  • php 如何实现asp 的application 对象! 还有如何统计同时在线人数?
  • 在线人数问题
  • 如何查在线人数?

关键词

  • 网站
  • application
  • asp
  • 线人数
  • ol
  • sum
  • global
  • sub
  • session

得分解答快速导航

  • 帖主:liumanman521
  • 51windows
  • citybird888
  • 241219

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo