广

ASP编程

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    在线统计代码 application

    2018-05-08 11:29:28 次阅读 稿源:互联网
    零七广告
    首先要设置好global.asa 文件,如下

    图片点击可在新窗口打开查看以下内容为程序代码
    1. <script language="vbscript" runat="server">
    2. sub application_onstart
    3. application("activeusers") = 0  //初始值
    4. end sub
    5. sub session_onstart
    6. session.timeout = 20          //删除不活动用户的时间
    7. session("start") = now
    8. application.lock           //锁定application变量
    9. application("activeusers") = application
    10. ("activeusers") + 1        //统计
    11. application.unlock          //解锁
    12. end sub
    13. sub session_onend
    14. application.lock
    15. application("activeusers") = application
    16. ("activeusers") - 1     //删除不活动用户或退出用户
    17. application.unlock
    18. end sub
    19. </script>


    显示在线用户数量的页面


    图片点击可在新窗口打开查看以下内容为程序代码
    1. <%@ language=vbscript %>
    2. <html>
    3. <head>
    4. <title>在线用户</title>
    5. </head>
    6. <body>
    7. <b>当前共有<font color="#cc0000"><%= application("activeusers") %></font> 人在线</b>
    8. </body>
    9. </html>

    最普通的方法是用SESSION,但缺点是无法即时反应在线情况(有超时时间)和占用服务器资源(如果有100人在线就有100个SESSION,想想看8);上次(好象间隔很久了耶)介绍了一种采用APPLICATION+COOKIES的方法,但实现方法有些烦琐同时还要设一个隐藏的自刷新页面。 
    这种方法则避免了以上的弊病,经实践,效果不错(例子:WWW。ATERSOFT。COM/BBS),具体如下: 
    假定INDEX。HTM为框架网页,包含ID=LEFT,ID=TOP和ID=BOTTOM的三个框架 
    1、做个统计页面USERNUM。ASP 
    <p>正在统计数据。。。</p> 
    <% 
    user=request.querystring("user") 
    if user=0 then '如果离开则人数-1 
    application.lock 
    application("num")=application("num")-1 
    application.unlock 
    response.write "<script>self.close();</script>" 
    elseif user=1 then '如果进入则+1 
    application.lock 
    application("num")=application("num")+1 
    application.unlock 
    end if 
    %> 

    2、在框架页面中如(INDEX。HTM)嵌入USERNUM。ASP 
    <body onbeforeunload="window.open('usernum.asp?user=0','num','menubar=no')"> 
    ...... 
    <iframe src="usernum.asp?user=1" frameborder=0 width=0 height=0></iframe> 
    3、在需要显示人数的页面(假定在LEFT显示)中加入 
    <div id=num><%=application("num")%></div> 
    4、设定需要更新数据的页面(如BOTTOM) 
    function tj(){ 
    top.left.num.innerHTML=<%=application("num")%>; 

    <body onload="tj()"> 
    完毕,这只是一个例子,具体应用可以灵活,另外,为什么当离开时要WINDOW。OPEN USERNUM。ASP呢?因为如果同样放在IFRME中,窗口关得太快,USERNUM。ASP页面来不及装载就关掉了无法减少人数

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七广告
    零七广告
    零七广告
    零七广告