本站为一个技术型PHP个人门户站,提供一些代码,技术文章、免费空间消息信息、让学习编程更轻松和不要钱买空间更方便-PHP小戴
你当前的位置:首页>>技术文章>>asp技术文章
小戴个人门户站导航 PHP小戴个人门户站 关于站长web个人门户站 设计服务-网络公司,建设网站,企业logo设计,包装设计,网站设计,整站程序开发 联系站长-小戴个人门户站
  • 技术文章排行榜
文章数据加载中...
  • 免费空间排行榜
空间数据加载中...

详谈Global.asa如何使用实例

  • 3,online.asp

    <%
    if request.querystring("logout")="true" then
    session.Abandon()
    response.end
    end if
    %>
    当前共有<%=Application("OnLine")%>在线
    <a href="online.asp?logout=true">退出</a>

      你发现在该页中只有一个Application("OnLine"),而且还是被显示引用的。那么其值来自何方?这正是Global.asa文件的关键所在。你可

    以在本机依次打开个窗口,进行进行关闭窗口或退出两种方法的调试。


      三、继续细化一下

      上面的程序你会发现:当进行“退出”连接后关闭窗口和直接关闭窗口效果是不一样的。因为Session存在时间的缘故,当直接进行关闭窗

    口,并不能触发Session_OnEnd事件,所以该如何实现这个几乎不可能的想法呢?

      大家都知道,当网页进行关闭的时候可以连带一个onunload事件,那么该onunload只要能执行Session的注销功能不就我们需要的吗?废话

    少说,将online.asp进行修改

      3,online.asp

     

    <%
    if request.querystring("logout")="true" then
    session.Abandon()
    response.end
    end if
    %>
    <body onunload=javascript:window.open("exit.asp")>
    当前共有<%=Application("OnLine")%>在线
    <a href="online.asp?logout=true">退出</a>

     

      注意,online.asp进行onunload的时候会打开exit.asp,那只要在exit.asp中再设置session.Abandon()不就OK了。

      4,exit.asp

    <%session.Abandon()%>
    <script>
    self.close()
    </script>

      当然,加了段Script脚本,目的是进行Session的注销以后立即进行关闭本身。那现在基本一个在线统计的Web应用就可以了。

     

      四、深入研究Global.asa

      从上面的调试中,举一反三的你,一定会提出一个问题:如何控制注册用户在线人数?那下面几个文件一个一个看:


      5,Global.asa(放在被调试的虚拟目录的根目录下面)


    <SCRIPT LANGUAGE="VBScript" RUNAT="Server">
    Sub Application_OnStart
    application("online")=0
    End Sub
    Sub Session_OnStart
    End Sub
    Sub Session_OnEnd
    if session.contents("pass") then '判断是否为登录用户的Session_OnEnd
    application.lock
    application("online")=application("online")-1
    application.unlock
    end if
    End Sub
    Sub Application_OnEnd
    End Sub
    </SCRIPT>

      注意本Global.asa中的Session_OnStart块不做任何事件。

     

      因为一旦有用户访问服务器而不管用户是否登录,都会产生OnStart事件,而现在需要的只是登录用户的在线,所以不能在OnStart事件里

    使Application("online")加1。


    页数:第[0]页||第[1]页||第[2]页||

  • [时间:2009-01-12 08:46:22][点击:]

  • 上下篇文章加载中...
返回首页 | 关于站长 | 联系站长| 设计服务 | 建站资源 | 技术文章 | 娱乐中心 | 免费空间 | 友情链接 | 留言蜚语 | 网站地图| 网友投稿|RSS订阅 
QQ:277728291 联系方式:15824537062 mail:27772821@163.com
版权所有 2008-2018 PHP小戴个人门户站-编程技术和空间和文章共享-www.phpxd.com Copyright 2008 phpxd.com