计数器ASP中设计网站计数器的四种不同方法及其比较

网站计数器  时间:2021-02-11  阅读:()

ASP中设计网站计数器的四种不同方法及

其比较

第9卷第4期

20o7年12月

黄冈职业技术学院

Journalo fHuanmmn~P olytechnicvd.9No.4

Dec.姗

ASP中设计网站计数器的四种不同方法及其比较

陈金莲

(黄冈职业技术学院湖北黄冈438(}02)

摘要:计数器是几乎每一个网站的要素,在A S P中,设计计数器有多种不同6 qA-法,每种方法都有各自的优缺点及适

用范围.本文从多个方面对四种方法进行了比较,帮助读者在作网站计数器时能根据实际情况作出正确的选择.

关键词:ASP;网站;应用程序;计数器;组件

中图分类号:TF393.09文献标识码:A文章编号:1672一lo47(20cr7)o4—0028—02Fourdifferer~methodsandtheiro0咖l—s锄ofd'aweb site伽inASP

ChertJin——lian

(HuanggangPolytechnicCollegeHuanggang438002Hubei)

Ab stract:Counteris avitalelementofaweb site.InASP,therearemanydifferentmethodstodesignacounter,andeachmethodhasitsOWltladvantagesanddisadvantagesandusingscope.Thispaper Ⅱmuchcomp ari s onab outthe s efourmetho ds fromvari ous as—pe~ts,whichhelpleadersmakerightchoicesaccordingtotheiractualsituationtodesignawebsitecounter.

Keywords:ASP;Website;Applicationprogram;Counter;Component

计数器是用来统计网站访问量的一段程序,访问量可

以反映出一个网站或其中的一个网页的受欢迎程度或影响力,所以几乎每一个网站都会用到这种程序段.

在ASP中,可以用四种不同的方法为网站设计计数器,

每种方法都有各自的优缺点及适用范围.很多的网站设计

人员,特别是初学者对到底该使用哪种方法是非常模糊的,本人根据多年的教学经验现总结归纳如下,以供各位设计

者参考.

第一种方法,利用全局文件globa1.asa及application对

象和session对象.globa1.asa文件位于应用程序的根目录下,在该文件中

对applicatlon-onstart和session.onstaxt两个过程编程即可.以下是程序示例:

<scriptlanguage="VB S cfipt"runat="s erver">subapplication-onstartapplication.1 ockapplication("all"1=0application.unlock

收稿日期:20∞一09—28

作者简介:陈金莲.女,黄冈职业技术学院计算机科学与技术系讲师.?

28?endsubsubsession.onstartapplication.1 ockapplication("all'')=application("all")+lapplication.unlockendsub

程序说明:事件application-onstart发生于网站中的任何

页面第一次被访问时,以后便不再发生,在该事件中给"访问总人数"变量a】 l赋了初值0;事件session-onstart发生于任何用户访问任何页面时,在该事件中对访问总人数变量a】 l累加了1.

这种方法设计出的计数器是对整个站点而言的,即统

计的是站点中所有页面的总访问量,也只有这种方法能实现这种统计效果.优点是:一旦web服务器启动,便自动开始计数,且计数器中的数据可在任何页面中输出;缺点是:

旦服务器由于某种原因停止后重新启动,计数器便清0,

这对很多网站而言显然是不合理的,当然这个问题可以通过对applieation-onend事件进一步编程来解决;但是这种方第4期ASP中设计网站计数器的四种不同的方法及比较第9卷法因不能统计某个页面的访问量,而不便于网站维护人员取得用户的喜好信息.

第二种方法,利用数据库,即将计数值存于数据库表

中.

实现步骤如下:

1,先建一数据库,数据库中建一个数据表,表中设计一

个计数字段,该字段初始值为O;

2,在需要统计访问量的页面程序中建立与上述数据库

的连接,并用SQL命令对表中的计数字段进行更新,即每当页面被访问时,就将字段值加1,最后在页面中输出该值.

关键代码如下:setdb=createobj ect("adodb.connection")db.open"……"省略号为一连接字符串,不同类型的

数据库连接字符串不一样db.execute("update表名set字段名=字段名+1")

setI'8=db.execute("select*from表名")

麟p0rlse.te(Is("字段名"))

这种方法设计的计数器能统计某个页面的访问量,当然也可以将多个页面的计数值置于同一表中的不同字段中,从而实现用同一表对多个页面的访问量进行统计.其优点是不论服务器是否停止,计数值都不会丢失,因为计数值是存于数据库中的,除非数据库崩溃.缺点是在需要统计访问量的页面中要建立与数据库的连接,并对表存取,这增加了程序的代码长度从而降低了页面的浏览速度(与数据库的连接比较费时间).

第三种方法,利用文件存取组件filesystemobject.

实现步骤:

1,先建一文本文件,文件中存储初值O;

2,在需要输出计数值的网页程序中,利用文件存取组件读出文本文件中的值;

3,将值累加1;

4,输出该值;

5,再利用文件存取组件将值写回文本文件中.

关键代码如下:setfo=server.cre眦0bj.吐("scripting.filesystemobj ect")定义一文件系统对象setif=fo.opentextfrle("文本文件的路径及文件名",1)定义一文本文件对象vlslt-number=elng(ff.readline)读出计数值v i s i t-numb e r=v i s i t-numb er+1settf=fo.opentextfile("文本文件的路径及文件名",2)以可写方式打开文本文件ff.writeline(visit-number)将更新后的访问次数写回文本文件tf.dose

re sp ons e.write("您是第"&vi s it-numb er&"位访客")这种方法与第二种方法一样,是为某个网页设计计数

器.优点:当服务器由停止到重新启动时,计数值不会归

O;缺点:当需要为多个页面设置计数器时,需要多个文本文件,比较麻烦;另外,当进行网站移置时,文本文件必须同时移到相应的位置,否则计数器就会出错.

第四种方法,利用计数器组件.

计数器组件其实是文件存取组件的一种简化和封装的结果,利用计数器组件做网页的计数器非常简单方便,只需要在程序中加以下几行代码即可:setcount=Server.creatobj ect()定义

个组件变量count.pagehit()将计数值加1vi s it-numb er=c ount.hit s()取出计数器中的计数值response.wIite"您是第"&cstr(visit-number)&"位访客"输出计数值

这种方法的优点是简单易行,服务器重启时,计数值不

会归O,缺点与第二种方法和第三种方法一样,不能统计整个网站的总访问量.

经过以上的比较我们不难发现,做网站计数器时,使用

第一种方法和第四种方法的居多,因为只有第一种方法能统计整个网站的总访问量,而第四种方法与第二种和第三种的功能一样,统计的是某个网页的访问量,但第四种方法简单易行.当然,在实际使用时,每个人可以根据实际情

况,个人喜好和熟悉程度选用相应的方法.

参考文献:

[1]尚俊杰.网络程序设计一Asp[M].北京:清华大学

出版社,2004.

[2]荣钦科技主笔室.ASP入门与应用[M].北京:中国铁道出版社,20o1.

[3]新电脑课堂.ASP编程篇[M].北京:电子工业出版社.2005.

[责任编辑:罗幼平]

?

29?

标准互联(450元)襄阳电信100G防御服务器 10M独立带宽

目前在标准互联这边有两台香港云服务器产品,这不看到有通知到期提醒才关注到。平时我还是很少去登录这个服务商的,这个服务商最近一年的促销信息比较少,这个和他们的运营策略有关系。已经从开始的倾向低价和个人用户云服务器市场,开始转型到中高端个人和企业用户的独立服务器。在这篇文章中,有看到标准互联有推出襄阳电信高防服务器100GB防御。有三款促销方案我们有需要可以看看。我们看看几款方案配置。型号内存硬盘IP...

racknerd:美国大硬盘服务器(双路e5-2640v2/64g内存/256gSSD+160T SAS)$389/月

racknerd在促销美国洛杉矶multacom数据中心的一款大硬盘服务器,用来做存储、数据备份等是非常划算的,而且线路还是针对亚洲有特别优化处理的。双路e5+64G内存,配一个256G的SSD做系统盘,160T SAS做数据盘,200T流量每个月,1Gbps带宽,5个IPv4,这一切才389美元...洛杉矶大硬盘服务器CPU:2 * e5-2640v2内存:64G(可扩展至128G,+$64)硬...

修罗云50元/月起香港大宽带NAT VPS,香港沙田建站2核2G5M仅70元/月起

修罗云怎么样?修罗云是一家国内老牌商家,修罗云商家以销售NAT机器起家,国内的中转机相当不错,给的带宽都非常高,此前推荐的也都是国内NAT VPS机器。今天,云服务器网(www.yuntue.com)小编主要介绍一下修罗云的香港云服务器,适合建站,香港沙田cn2云服务器,2核2G,5M带宽仅70元/月起,同时香港香港大带宽NAT VPS低至50元/月起,性价比不错,可以尝试一下!点击进入:修罗云官...

网站计数器为你推荐
办公协同软件oa办公系统软件有哪些创维云电视功能创维电视怎么用,我买了个创维云电视,现在不知道怎么用手机往电视上传照片,谁能解答以下,怎么升级ios6苹果IOS5怎么升级IOS6版本mate8价格华为麦特八多少价格机械键盘轴大家觉得机械键盘什么轴最舒服虚拟专用网安卓手机的虚拟专用网设置是什么东西?怎么用?虚拟专用网虚拟专用网 有什么用处?电子商务网站模板电子商务网站模板哪个好?电子商务网站模板免费建站怎么样?小米手柄小米手柄怎么用?php购物车PHP中用json实现购物车功能,怎么实现
大庆服务器租用 花生壳免费域名 smartvps 紫田 创宇云 免费个人网站申请 dux 电子邮件服务器 域名和空间 1g空间 傲盾官网 申请网页 新睿云 美国凤凰城 英雄联盟台服官网 个人免费邮箱 云服务器比较 卡巴斯基试用版下载 apnic 阿里云个人邮箱 更多