欢迎来到天天文库
浏览记录
ID:10349781
大小:56.50 KB
页数:5页
时间:2018-07-06
《用asp编写网站流量统计系统--》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、用ASP编写网站流量统计系统>>在目前的网站统计系统决大部分都是CGI的,但编写起来特别复杂,而ASP学起来简单,更有和数据库结合的优点,所以结合自己曾经做过的网站统计系统,和大家探讨一下ASP编写网站统计系统。 大家都看过网易的网站统计系统,它可以统计总访问量,每日平均访问量,当日访问量,最高访问量,最高访问日期,日流量分析,月流量分析,周流量分析,浏览器分析,等等。 其实要做一个ASP的访问统计系统关键是系统表结构的设计。以及如何来采集用户的CGI变量,如何来显示用户的信息。也就是说系统的
2、关键是两个ASP程序,统计程序和显示程序。 首先我们先看看如何来采集用户的访问信息。 我们编写访问统计需要知道用户的如下信息,访问者的IP(根据访问IP可以形成访问者IP列表),访问者的浏览器与操作系统(统计访问者的浏览器与操作系统及所有访问者浏览器与操作系统比例图),访问者的访问时间(进行日访问量分析,月访问量分析,周访问量分析),下面我们来看看用ASP的获得以上信息的语句: 1、获得访问者IP DimM_IP M_IP=Request.Servervariables("REMOTE_
3、HOST") 用上面的语句可以取得访问者的IP。 2、获得浏览器信息 DimO_BroM_DateTime M_DateTime=Year(Date())"/"Right("0"Month(Date()),2)"/"Right("0"Day(Date()),2)"/"Right("0"Hour(Time()),2)":"Right("0"Minute(Time()),2)":"Right("0"Second(Time()),2) 4、取得用户的操作系统。 在ASP中使用如下语句可以得到访
4、问者的viee"><imgsrc="counter.asp?userid=username"></a>上面的userid是具体哪一个用户,要注意用户和访问者不是一个概念。 通过上面的字符串我们就可以采集用户的访问数据,并给用户提供观看数12下一页>>>>这篇文章来自..,。据的链接。在我们看加有网易的统计系统的页面时会发现它会返回给用户一个图标,我们就可以在counter.asp中实现这个功能。 加入:response.redirect"abc.gif" 这个语句我们可以加在统计数据采集后返
5、回给用户。 如何设计数据表结构?设计表结构是一项极其重要的工作,它的合理与否与程序的编制紧密相关。 一个网站统计系统应该有一个用户表,统计值表。 这个用户表也就是保留注册用户信息的表,统计值表就是记录用户的每一项统计指标值的表。在统计值的表中我们可以指定用户的统计指标,我们可把每一个指标用一个ID值来表示,这里我们简单举例。 用户表:TableName:regist_tableFieldtypeusernameC用户名passe:value_tableFieldtypeusernamec用
6、户名idc统计指标IDvalueidatetimec统计指标的值 Id列表:TableName:id_tableFieldtypeidC统计指标IDidvalueC统计指标的说明 有了这三个表我们就可以开始做了。 如我们可以指定以下IDididvalue101总访问量2011日访问量2022日访问量::::23131日访问量 要想对用户开始统计我们必须得先让用户注册,用户使用的流程如下: 填注册表->初始用户的value表(把对应的ID加入)->把注册信息反馈给用户->用户在自己的页面
7、上加入链接->开始统计 能采集数据我们都能采到了,那么我们就开始编制ASP的统计页面。 这一页我们叫计数页,counter.asp 这段asp代码我们需要让它按如下的流程进行采集数据并保存数据和更新数据: 采集用户名,判断用户名是否合法,采集访问者的信息,对信息进行加工,进行保存和更新数据库,返回logo图标。 调用这个ASP用counter.asp?user=abc这个方式。 采集用户名我们可以用Request对象的相应方法取得,然后检查用户表判断用户是否合法,然后取信息,用我们上面
8、讲到的取得相应信息的方法取得信息,然后进行加工保存在数据表里,但最重要的是如何对数据进行更新,如当日每小时访问统计数,当天每小时统计数等,我们如何对每天的数据进行更新是这个程式的要点,我们可以采取几种方式,如对每天的每个小时的记录的更新我们采取在每天午夜12点更新,对每月的每一天的数据我们在月份切换的那一天进行更新。 下面我讲一下具体的流程,以月份统计举例: 1,得出上一次的统计的日期时间 2,得出当前的日期时间,当前月份并转化成相应的ID 3,判断当前月份与上一次月份是否
此文档下载收益归作者所有