ASP编程:用ASP计划网站在耳目数统计程序
楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。在扫瞄网页的时侯,经常能够瞥见一些“以后网站上的人数是XXX人”的在耳目数同计。怎样用ASP来做一个呢?起首,剖析一下它的做法,一样平常来讲,这些线上人数统计都是指一个时段内的访主人数统计。好比(5分钟内,10分钟内)而这个工夫的是非,是由计划者设定的。 在这个时段内同计各个分歧IP的访客总数,就能够得出以后的线上人数了,但这里有一个准确成绩必要办理,至于用甚么举措来准确地统计,那就是大家分歧的做法了,好比能够用主动提交的页面,隔一段工夫读取COOKIES等等,而在ASP中,有一个更好的技能,就是利用session工具来统计,这里先容一下gobal.asa这个文件,这是一个很主要的一个文件,请看看它的布局。<SCRIPTLANGUAGE="VBScript"RUNAT="Server">
SubSession_OnStart
EndSub
SubSession_OnEnd
EndSub
subApplication_OnStard
EndSub
subApplication_OnEnd
EndSub</SCRIPT>
当有一个会话产生时(用户扫瞄网页,向Web服务器收回哀求)那末,假如自服务器启动后第一个用户的话,就会同时产生Application_OnStard和Session_OnStart这两个事务,以后,再有其余用户收回哀求的话,就只产生Session_OnStart这个事务,而session的保存期是多长,是能够设定的,Session.timeout=X(分钟)
好了,有了这个很好用的办法,我们就可以正确地统计出在耳目数了,而人数总计是用一个application变量来保留,当在第一个会话入手下手时,在Application_OnStard事务中安排一条清空计数器的语句application("online")=0,然后,在Session_OnStart事务中,安排一条增添在耳目数的语句application("online")=application("online")+1,而在Session_OnEnd事务响应地放一条削减在耳目数的语句,令计数值减一。
如许,这个文件就改成以下
<SCRIPTLANGUAGE="VBScript"RUNAT="Server">
SubSession_OnStart
application("online")=application("online")+1
EndSub
SubSession_OnEnd
application("online")=application("online")-1
EndSub
subApplication_OnStard
application("online")=0
EndSub
subApplication_OnEnd
application("online")=0
EndSub</SCRIPT>
接上去编一个显现图形数字的程序,把在耳目数显现在指定的页面上。如许就可以得出在人数了
*online.asp
<%@language="vbscript"%>
<%
tmp=application("online")
tmp=Cstr(tmp)
dimdisp(20)
dimimages(20)
dbbits=len(tmp)
forI=1todbbits
disp(I)=left(right(tmp,I),I-(I-1))
next
forI=dbbitsto1step-1
images(I)="<imgsrc="&"http://xxxx.com.cn/pic"&"/"&disp(I)&".gif>"
response.write"document.write("&images(I)&");"
next
%>
下面的程序很复杂,这里不作剖析了,请人人本人浏览一下。在挪用在线统计的页面上用一句script语句援用online.asp文件,以显现图形统计器。
<scriptlanguage="JavaScript"src="http://xxxx.com.cn/online.asp"></script>
如今能够了,记着要点,你必需把gobal.asa放在准确的web使用程序根目次上,而最好独自为这个统计新建一个web使用程序,不要与别的其余程序凌乱了,否则得出的数据是禁绝确的,而把这个程序修正为多用户的在线统计也很复杂。如许就能够供应在线统计服务了,怎样完成请又人人往思索一下吧....
asp可以使用微软的activeX使得网页功能无比强大,不过安全性也较差,而且是基于的windows服务器,所以性能稳定性也一般 我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。 我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标. 你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。 弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。 最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。 ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。 我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。 你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
页:
[1]