当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP的Global.asa使用说明

ASP
关于网站文件自动备份程序的一点思考
DBTree 1.3.2
抽取10万条数据,想起GetRows()
一份ASP内存的释放的实验报告
[整理版]ASP常用内置函数
Jmail组件发送邮件之绝对能用的函数
虚拟主机重启代码
Access 开发人员常犯错误大全
用Asp如何实现防止网页频繁刷新?
ASP 中使用 HTTP 协议发送参数详解
为什么 Windows2003 的 IIS6.0 不能上传超过 200K 的文件?
ASP类的写法
实例学习如何在ASP中调用DLL
被动式统计网站在线人数
[原创]完美解决ASP 不能更新。数据库或对象为只读。
5天学会asp
Wrance的图片系统目录直读版1.0
信息发布中的判断过期和有效期的东西
小偷程序2
一个ASP中的数组

ASP的Global.asa使用说明


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 50 ::
收藏到网摘: n/a

/*-------------------ASP文档参考集-----------------------*/
*-->作者:草履虫
*-->时间:2007-4.28---2007-4.30(原来是自己编写的手册,现在发在这里)
*-->联系:[email protected]
*-->文档功能:
1.复习了ASP,加深了对ASP结构的理解和ASP的体会
2.可以用来做ASP参考,自己写的,参考起来更方便
这是第四部分:Global.asa
/*---------------------------关于ASP组件------------------------*/
ASP组件就不叙述了,遇到重要的组件(主要是第三方的组件),如上传组件等等,再专门
介绍
/*==============================END==================================*/
/*-----------------------Global.asa-------------------------*/
.asa是文件后缀名,它是Active Server Application的首字母缩写。Global.asa文件可以
管理在ASP应用中两个非常苛刻的对象:Application、Session
Global.asa是一个可选文件,程序编写者可以在该文件中指定事件脚本,并声明具有会话和
应用程序作用域的对象。该文件的内容不是用来给用户显示的,而是用来存储事件信息和由
应用程序全局使用的对象。该文件必须存放在应用程序的根目录内。每个应用程序只能有一
个Global.asa文件
关于Global.asa文件最常见的错误概念是它能为一般的使用的函数和子程序用作书库。Global.asa文件仅能用于创建对象的引用和俘获启动,以及结束Application对象和Session对象。
Global.asa文件主要基于会话级事件被访问,在以下三种情况下被调用:
1.当Application_OnStart或Application_OnEnd事件被触发。
2.当Session_OnStart或Session_OnEnd事件被触发。
3.当引用一个在Global.asa文件里被实例化的对象(Object)。

Global.asa的标准文件格式如下:
<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
Sub Application_OnStart
'Application_OnStart 当任何客户首次访问该应用程序的首页时运行
End Sub
Sub Session_OnStart
'Session_OnStart 当客户首次运行 ASP 应用程序中的任何一个页面时运行
End Sub
Sub Session_OnEnd
'Session_OnEnd 当一个客户的会话超时或退出应用程序时运行
End Sub
Sub Application_OnEnd
'Application_OnEnd 当该站点的 WEB 服务器关闭时运行
End Sub
</SCRIPT>
两个关于Global.asa经典的例子:
1.强制进入首页,就是如果第一次访问网站,强制定位到首页的办法:
<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
Sub Session_OnStart '只要是用户第一次登录本站,则会跳转到首页
response.redirect("首页地址")
End Sub
</SCRIPT>
2.网站在线人数的统计:
<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
  Sub Application_OnStart
  ' 当服务器开启时,设置用户计数器为0
  Application("ActiveUsers") = 0
  End Sub
  Sub Session_OnStart
  '设置Session对象的有效时间为20分钟(也可以更长,但是越长对服务器的
  '资源占用越多,因为服务器不接受少于20分钟的有效时间,所以设置少于20
  '分钟的有效时间是无效的)
  Session.Timeout = 20
  ' 当开始一个Session时用户计数器加1
  Application.Lock
  Application("ActiveUsers") = Application("ActiveUsers") + 1
  Application.UnLock
  End Sub
  
  Sub Session_OnEnd
  ' 当结束一个Session时用户计数器减1
  Application.Lock
  Application("ActiveUsers") = Application("ActiveUsers") - 1
  Application.UnLock
  End Sub
  </SCRIPT>