|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用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
%>
<P> 下面的程序很复杂,这里不作剖析了,请人人本人浏览一下。在挪用在线统计的页面上用一句script语句援用online.asp文件,以显现图形统计器。
<scriptlanguage="javascript"src=" |
|