ASP网站制作之使用global.asa企图实行程序
无法实现跨操作系统的应用。当然这也是微软的理由之一,只有这样才能发挥ASP最佳的能力。可是我却认为正是Windows限制了ASP,ASP的概念本就是为一个能让系统运行于一个大的多样化环境而设计的;程序|实行实在就是使用文件“global.asa”!很多ASP编程老手都想晓得这器材是甚么?现实上,global.asa就是一个事务驱动程序,个中共包括4个事务处置历程:Application_OnStart、Application_OnEnd、Session_OnStart和Session_OnEnd。当网站的一个使用程序的页面第一次被用户会见时,global.asa就被装载进内存。当使用程序(application)启动、停止,大概会话(session)入手下手、停止时,你就能够到场必要实行的剧本代码。
使用一些技能,你就能够利用global.asa文件到达企图实行义务的目标。
这里有一个例子:“跟踪网站有几会见者;在会见量到达100时,计数器复位到0,而且实行你事前体例的代码”。固然,依据本人的必要,你能够调剂会见量的下限数量100。
global.asa的内容以下:
<SCRIPTLANGUAGE=VBScriptRUNAT=Server>
SubApplication_OnStart
Application("SessionCount")=0
EndSub
SubSession_OnStart
Application.Lock
Application("SessionCount")=Application("SessionCount")+1
Application.Unlock
IfApplication("SessionCount")>100Then
Application.Lock
Application("SessionCount")=0
Application.Unlock
Hereyouwouldputanycodeyouneedtorun
donotsurroundthecodewith<%%>tags
Forexampleyoumightrunadatabasequerythatchecksforexpiredaccounts
Endif
EndSub
</SCRIPT>
上面,让我们看看一天内实行4次某义务的情形。你能够将日期和工夫的值存储在一个文本文件中,而且周期性地反省它。事先间已往6个小不时,写进新的日期与工夫到这个文本文件中,而且,启动你想要实行的义务。你能够改动“6”这个数值,从而更多大概更少地实行义务。
固然,下面的办法必要对文本文件设置读、写权限后才干准确实行,但这仍不掉为一个十分伶俐的办理计划!
在这个例程中,每有15个新会见者时,就反省文本文件一次。固然,你能够调剂“15”的数值,大概设定每当有新会见者时,都反省文本文件一次。但如许处置,无疑会减轻站点的负载,华侈服务器的资本!总之,反省的频度由你本人思索后设定。
例子中,必需包管初度写进文本文件的日期与工夫的正当性,不然,当程序初次读进一个空值时,就会产生运转毛病。
好比:将6/30/996:58:45PM初始写进文本文件的第一行。
以后,也能够到场一些代码,用来反省日期与工夫的写法,而且处置堕落信息。但初始写进一个正当的日期与工夫数值,将会更复杂一些。
global.asa的内容以下:
<SCRIPTLANGUAGE=VBScriptRUNAT=Server>
SubApplication_OnStart
Application("SessionCount")=0
EndSub
SubSession_OnStart
Application.Lock
Application("SessionCount")=Application("SessionCount")+1
Application.Unlock
IfApplication("SessionCount")>15Then
Application.Lock
Application("SessionCount")=0
Application.Unlock
SetObjMyFile=CreateObject("Scripting.FileSystemObject")
SetOpenMyFile=ObjMyFile.OpenTextFile(Server.MapPath("last-update.txt"))
MyFileValue=OpenMyFile.ReadLine
OpenMyFile.Close
IfDateDiff("h",MyFileValue,NOW)>6Then
Hereyouwouldputanycodeyouneedtorun
donotsurroundthecodewith<%%>tags
Forexampleyoumightrunadatabasequerythatchecksforexpiredaccounts
SetWriteMyFile=ObjMyFile.CreateTextFile(Server.MapPath("last-update.txt"))
WriteMyFile.WriteLine(NOW)
WriteMyFile.Close
Endif
EndIf
EndSub
</SCRIPT>
请注重:另有很多更好的办法到达反省的目标,这篇文章的目标是想起到举一反三的感化。
同时请记着:WEB站点的使用程序必定要设置为一个Application,如许“global.asa”文件才干起感化。很多假造域默许为Application,但上层的目次却不是。
最初的一点提醒:在将代码写进global.asa前,请先写进一个“ASP”文件中举行测试。假如测试失利,那末在global.asa中也将不克不及运转乐成。同时,确认文本文件的路径是准确的。
</p>ActiveServerPage技术为应用开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。在讨论ASP的安全性问题之前,让我们来看看ASP是怎么工作的。 学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。 我想问如何掌握学习节奏(先学什么再学什么)最好详细点? 下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。 ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题: Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名") 接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。 作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。 还有如何才能在最短的时间内学完?我每天可以有效学习2小时,双休日4小时。 我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标. 虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。 代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。 哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的? 作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。
页:
[1]