公关做的好的网站,公司注销了网站备案的负责人,济南品牌网站建设公司,如何做解析网站Global.asa 文件是一个可选的文件#xff0c;它可包含可被 ASP 应用程序中每个页面访问的对象、变量以及方法的声明。
Global.asa 文件
Global.asa 文件是一个可选的文件#xff0c;它可包含可被 ASP 应用程序中每个页面访问的对象、变量以及方法的声明。所有合法的浏览器脚…Global.asa 文件是一个可选的文件它可包含可被 ASP 应用程序中每个页面访问的对象、变量以及方法的声明。
Global.asa 文件
Global.asa 文件是一个可选的文件它可包含可被 ASP 应用程序中每个页面访问的对象、变量以及方法的声明。所有合法的浏览器脚本都能在 Global.asa 中使用。
Global.asa 文件可包含下列内容
· Application 事件
· Session 事件
· object 声明
· TypeLibrary 声明
· #include 命令
注释Global.asa 文件须存放于 ASP 应用程序的根目录中且每个应用程序只能有一个 Global.asa 文件。
Global.asa 中的事件
在 Global.asa 中我们可以告知 application 和 session 对象在启动和结束时做什么事情。完成此项任务的代码被放置在事件操作器中。Global.asa 文件能包含四种类型的事件
Application_OnStart - 此事件会在首位用户从 ASP 应用程序调用第一个页面时发生。此事件会在 web 服务器重起或者 Global.asa 文件被编辑之后发生。Session_OnStart 事件会在此事件发生之后立即发生。
Session_OnStart - 此事件会在每当新用户请求他或她的在 ASP 应用程序中的首个页面时发生。
Session_OnEnd - 此事件会在每当用户结束 session 时发生。在规定的时间默认的事件为 20 分钟内如果没有页面被请求session 就会结束。
Application_OnEnd - 此事件会在最后一位用户结束其 session 之后发生。典型的情况是此事件会在 Web 服务器停止时发生。此子程序用于在应用程序停止后清除设置比如删除记录或者向文本文件写信息。
Global.asa 文件可能类似这样
script languagevbscript runatserver
sub Application_OnStartsome code
end sub
sub Application_OnEndsome code
end sub
sub Session_OnStartsome code
end sub
sub Session_OnEndsome code
end sub
/script
注释由于无法使用 ASP 的脚本分隔符 (% 和 %) 在 Global.asa 文件中插入脚本我们需使用 HTML 的 script 元素。
object 声明
可通过使用 object 标签在 Global.asa 文件中创建带有 session 或者 application 作用域的对象。
注释object 标签应位于 script 标签之外。
语法
object runatserver scopescope idid {progidprogID|classidclassID}
....
/object 参数 描述 scope 设置对象的作用域作用范围Session 或者 Application。 id 为对象指定一个唯一的 id。 ProgID 与 ClassID 关联的 id。ProgID 的格式是[Vendor.]Component[.Version]。 ProgID 或 ClassID 必需被指定。 ClassID 为 COM 类对象指定唯一的 id。 ProgID 或 ClassID 必需被指定。
实例
第一个实例创建了一个名为 MyAd 且使用 ProgID 参数的 session 作用域对象
object runatserver scopesession idMyAd progidMSWC.AdRotator
/object 第二个实例创建了名为 MyConnection 且使用 ClassID 参数的
object runatserver scopeapplication idMyConnection classidClsid:8AD3067A-B3FC-11CF-A560-00A0C9081C21
/object 在此 Global.asa 文件中声明的这些对象可被应用程序中的任何脚本使用。
GLOBAL.ASA:
object runatserver scopesession idMyAd progidMSWC.AdRotator
/object 您可以从 ASP 应用程序中的任意页面引用此 MyAd 对象
某个 .ASP 文件:
%MyAd.GetAdvertisement(/banners/adrot.txt)% TypeLibrary 声明
TypeLibrary 类型库是一个容器其中装有对应于 COM 对象的 DLL 文件。通过在 Global.asa 中包含对 TypeLibrary 的调用可以访问 COM 对象的常量同时 ASP 代码也能更好地报告错误。假如您的站点的应用程序依赖于已在类型库中声明过数据类型的 COM 对象您可以在 Global.asa 中对类型库进行声明。
语法
!--METADATA TYPETypeLib
filefilename
uuidtypelibraryuuid
versionversionnumber
lcidlocaleid
-- 参数 描述 file 规定指向类型库的绝对路径。参数 file 或者 uuid两者缺一不可。 uuid 规定了针对类型库的唯一的标识符。参数 file 或者 uuid两者缺一不可。 version 可选。用于选择版本。假如没有找到指定的版本将使用最接近的版本。 lcid 可选。用于类型库的地区标识符。
错误值
服务器会返回以下的错误消息之一 错误 代码 描述 ASP 0222 Invalid type library specification ASP 0223 Type library not found ASP 0224 Type library cannot be loaded ASP 0225 Type library cannot be wrapped
注释METADATA 标签可位于 Global.asa 文件中的任何位置在 script 标签的内外均可。不过我们还是推荐将 METADATA 标签放置于 Global.asa 文件的顶部。
限定
关于可以在 Global.asa 文件中引用的内容的限定
你无法显示 Global.asa 文件中的文本。此文件无法显示信息。
你只能在 Application_OnStart 和 Application_OnEnd 子例程中使用 Server 和 Application 对象。在 Session_OnEnd 子例程中你可以使用 Server、Application 和 Session 对象。在 Session_OnStart 子例程中你可使用任何内建的对象。
如何使用子例程
Global.asa 常用于对变量进行初始化。
下面的例子展示如何检测访问者首次到达站点的确切时间。时间存储在名为 started 的 Session 对象中并且 started 变量的值可被应用程序中的任何 ASP 页面访问
script languagevbscript runatserver
sub Session_OnStartSession(started)now()
end sub
/script Global.asa 也可用于控制页面访问。
下面的例子展示如何把每位新的访问者重定向到另一个页面在这个例子中会定向到 newpage.asp 这个页面
script languagevbscript runatserver
sub Session_OnStartResponse.Redirect(newpage.asp)
end sub
/script 我们还可以在 Global.asa 中包含函数。
在下面的例子中当 Web 服务器启动时Application_OnStart 子例程也会启动。随后Application_OnStart 子例程会调用另一个名为 getcustomers 的子例程。getcustomers 子例程会打开一个数据库然后从 customers 表中取回一个记录集。此记录集会赋值给一个数组在不查询数据库的情况下任何 ASP 页面都能够访问这个数组
script languagevbscript runatserver
sub Application_OnStartgetcustomers
end sub
sub getcustomersset connServer.CreateObject(ADODB.Connection)conn.ProviderMicrosoft.Jet.OLEDB.4.0conn.Open c:/webdata/northwind.mdbset rsconn.execute(select name from customers)Application(customers)rs.GetRowsrs.Closeconn.Close
end sub
/script Global.asa 实例
在这个例子中我们要创建一个可计算当前访客的 Global.asa 文件。
Application_OnStart 设置当服务器启动时Application 变量 visitors 的值为 0。
每当有新用户访问时Session_OnStart 子例程就会给变量 visitors 加 1。
每当 Session_OnEnd 子例程被触发时此子例程就会从变量 visitors 减 1。
Global.asa 文件
script languagevbscript runatserver
Sub Application_OnStart
Application(visitors)0
End Sub
Sub Session_OnStart
Application.Lock
Application(visitors)Application(visitors)1
Application.UnLock
End Sub
Sub Session_OnEnd
Application.Lock
Application(visitors)Application(visitors)-1
Application.UnLock
End Sub
/script 此 ASP 文件会显示当前用户的数目
html
head
/head
body
pThere are %response.write(Application(visitors))% online now!/p
/body
/html