欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【如何用ASP编写网站统计系统】,下面是详细的分享!
如何用ASP编写网站统计系统
在目前的网站统计系统决大部分都是CGI的,但编写起来特别复杂,而ASP学起来简单,更有和数据库结合的优点,所以结合自己曾经做过的网站统计系统,和大家探讨一下ASP编写网站统计系统。
大家都看过中国站长站CNZZ的网站统计系统,它可以统计总访问量,每日平均访问量,当日访问量,最高访问量,最高访问日期,日流量分析,月流量分析,周流量分析,浏览器分析,等等。
其实要做一个ASP的访问统计系统关键是系统表结构的设计。以及如何来采集用户的CGI变量,如何来显示用户的信息。也就是说系统的关键是两个ASP程序,统计程序和显示程序。
首先我们先看看如何来采集用户的访问信息。
我们编写访问统计需要知道用户的如下信息,访问者的IP(根据访问IP可以形成访问者IP列表),访问者的浏览器与操作系统(统计访问者的浏览器与操作系统及所有访问者浏览器与操作系统比例图),访问者的访问时间(进行日访问量分析,月访问量分析,周访问量分析),下面我们来看看用ASP的获得以上信息的语句:
1、获得访问者IP
|
Dim M_IP |
2、获得浏览器信息
| Dim O_Browser,M_BrowserType Set O_Browser=Server.Createobject("MSWC.BrowserType") M_BrowserType=O_Browser.Browser+O_Browser.Version |
3、获得访问时间
|
Dim M_DateTime |
4、取得用户的操作系统。
在ASP中使用如下语句可以得到访问者的http_user_agent字符串。
|
Dim StrUserAgent |
| Mozilla/4.0 (compatible; MSIE 4.01; Windows 98) |
平常我们所见的其它一些主要的UserAgent字符串如下:
使用IE的浏览器:
Mozilla/2.0 (compatible; MSIE 3.01; Windows 95)
Mozilla/4.0 (compatible; MSIE 4.0; Windows 95)
Mozilla/4.0 (compatible; MSIE 4.01; Windows 98)
Mozilla/4.0 (compatible; MSIE 5.0; Windows 98)
Mozilla/4.0 (compatible; MSIE 5.0b2; Windows NT)
使用NetScape的浏览器:
Mozilla/4.03 〔en〕 (Win95; I)
Mozilla/4.08 〔en〕 (WinNT; U ;Nav)
Mozilla/4.5 〔en〕 (WinNT; U)
Mozilla/3.04Gold (Win95; I)
使用Opera的浏览器:
Mozilla/4.0 (compatible; Opera/3.0; Windows 95) 3.50b10
FrontPage编辑器:
Mozilla/2.0 (compatible; MS FrontPage 3.0)
使用Sun操作系统:
Mozilla/3.01Gold (X11; I; SunOS 5.7 i86pc)
使用PowerPc的Mac机:
Mozilla/4.0 (compatible; MSIE 4.5; Mac_PowerPC)
通过分析以上字符串,我们可以找出规律,编写一个子程序来判断访问者用的是何种操作系统,又由于用ASP中的判断浏览器类型的控件需要更新Browser.ini文件,所以我们可以结合这个字符串来判断浏览器属性。
1.我们以什么样的方式来统计网站呢?
我们可以让用户在他的主页上加入如下语句:
| <a href=http://www.chinaz.com/program/2008/0617/"http://www.abc.com/viewer.asp?userid=username"> <img src=http://www.chinaz.com/program/2008/0617/"http://www.abc.com/counter.asp?userid=username"></a> |
上面的userid是具体哪一个用户,要注意用户和访问者不是一个概念。
通过上面的字符串我们就可以采集用户的访问数据,并给用户提供观看数据的链接。在我们看加有网易的统计系统的页面时会发现它会返回给用户一个图标,我们就可以在counter.asp中实现这个功能。
加入:
| response.redirect http://www.abc.com/abc.gif |
2.如何设计数据表结构?
设计表结构是一项极其重要的工作,它的合理与否与程序的编制紧密相关。
一个网站统计系统应该有一个用户表,统计值表。
这个用户表也就是保留注册用户信息的表,统计值表就是记录用户的每一项统计指标值的表。在统计值的表中我们可以指定用户的统计指标,我们可把每一个指标用一个ID值来表示,这里我们简单举例。
用户表:
|
Table Name:regist_table |
|
Table Name:value_table |
|
Table Name:id_table |
如我们可以指定以下ID
id idvalue
101 总访问量
201 1日访问量
202 2日访问量
: :
: :
231 31日访问量
要想对用户开始统计我们必须得先让用户注册,用户使用的流程如下:
这一页我们叫计数页,counter.asp
这段asp代码我们需要让它按如下的流程进行采集数据并保存数据和更新数据:
采集用户名,判断用户名是否合法,采集访问者的信息,对信息进行加工,进行保存和更新数据库,返回logo图标。
调用这个ASP用counter.asp?user=abc这个方式。
3.下面我讲一下具体的流程,以月份统计举例:
(1)得出上一次的统计的日期时间
(2)得出当前的日期时间,当前月份并转化成相应的ID
(3)判断当前月份与上一次月份是否相同,如果相同则给总数加1,当前月的ID累加1,如不相同则清零所有月份ID,只给总数ID加1
(4)根据月份统计我们可以做一下小时统计,周统计,天统计。
按如上的流程我们就可以做统计页了,要注意每个ID的分配要分类明确代表的含义要明晰。
以上所分享的是关于如何用ASP编写网站统计系统,下面是编辑为你推荐的有价值的用户互动:
相关问题:ASP.NET开发的网站,怎么统计菜单的使用量
答:可能是你的设计思路有问题。 菜单的使用量统计其实没有太大意义,还不如统计页面的使用量,其实跟菜单使用量统计是一个意思。 页面使用效率的统计,建议采取权限验证方法,在进行页面使用权限验证的同时,对使用量计数,或者直接产生使用日志,... >>详细
相关问题:怎样在asp.net网站上写访问量的代码统计
答:asp.net网站统计访问量: 参考代码如下: >>详细
相关问题:用asp。net怎么做网站人数统计,和在线人数统计
答:建立一个Global.asax文件; void Application_Start(object sender, EventArgs e) { //在应用程序启动时运行的代码 Application["count"]=0; } void Session_Start(object sender, EventArgs e) { //在新会话启动时运行的代码 Application.Lock(... >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
