学院首页 软件应用 编程开发 创意设计 认证培训 软件论坛
ASP ASP.NET PHP JSP SQL MYSQL Java VB

您的位置:学院 >> 编程开发 >> ASP >> 用ASP编写网站流量统计系统


用ASP编写网站流量统计系统


在目前的网站统计系统决大部分都是CGI的,但编写起来特别复杂,而ASP学起来简单,更有和数据库结合的优点,所以结合自己曾经做过的网站统计系统,和大家探讨一下ASP编写网站统计系统。

  大家都看过网易的网站统计系统,它可以统计总访问量,每日平均访问量,当日访问量,最高访问量,最高访问日期,日流量分析,月流量分析,周流量分析,浏览器分析,等等。

  其实要做一个ASP的访问统计系统关键是系统表结构的设计。以及如何来采集用户的CGI变量,如何来显示用户的信息。也就是说系统的关键是两个ASP程序,统计程序和显示程序。

  首先我们先看看如何来采集用户的访问信息。

  我们编写访问统计需要知道用户的如下信息,访问者的IP(根据访问IP可以形成访问者IP列表),访问者的浏览器与操作系统(统计访问者的浏览器与操作系统及所有访问者浏览器与操作系统比例图),访问者的访问时间(进行日访问量分析,月访问量分析,周访问量分析),下面我们来看看用ASP的获得以上信息的语句:

  1、获得访问者IP

  Dim M_IP

  M_IP=Request.Servervariables("REMOTE_HOST")

  用上面的语句可以取得访问者的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

 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中使用如下语句可以得到访问者的http_user_agent字符串。

  Dim StrUserAgent

  StrUserAgent=Request.ServerVariables("HTTP_USER_AGENT")

  这个字符串一般是如下格式:

  Mozilla/4.0 (compatible; MSIE 4.01; Windows 98)

  上面的字符串可以说明访问者使用的操作系统是Windows98,浏览器是MSIE 4.01,但是这个字符串格式不固定,而且可以自己更改。

  平常我们所见的其它一些主要的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文件,所以我们可以结合这个字符串来判断浏览器属性。

  我们以什么样的方式来统计网站呢?

  我们可以让用户在他的主页上加入如下语句:

  <a href="http://www.abc.com/viewer.asp?userid=username"><img src="http://www.abc.com/counter.asp?userid=username"></a>上面的userid是具体哪一个用户,要注意用户和访问者不是一个概念。

  通过上面的字符串我们就可以采集用户的访问数据,并给用户提供观看数据的链接。在我们看加有网易的统计系统的页面时会发现它会返回给用户一个图标,我们就可以在counter.asp中实现这个功能。

  加入:response.redirect "http://www.abc.com/abc.gif"

  这个语句我们可以加在统计数据采集后返回给用户。

  如何设计数据表结构?

设计表结构是一项极其重要的工作,它的合理与否与程序的编制紧密相关。

  一个网站统计系统应该有一个用户表,统计值表。

  这个用户表也就是保留注册用户信息的表,统计值表就是记录用户的每一项统计指标值的表。在统计值的表中我们可以指定用户的统计指标,我们可把每一个指标用一个ID值来表示,这里我们简单举例。

  用户表:

Table Name:regist_table

Field type

username C 用户名

password C 密码

regdate C 注册时间

  值表:

Table Name:value_table

Field type

username c 用户名

id c 统计指标ID

value i

datetime c 统计指标的值

  Id列表:

Table Name:id_table

Field type

id C 统计指标ID

idvalue C 统计指标的说明

 

  有了这三个表我们就可以开始做了。

  如我们可以指定以下ID

id idvalue

101 总访问量

201 1日访问量

202 2日访问量

: :

: :

231 31日访问量

  要想对用户开始统计我们必须得先让用户注册,用户使用的流程如下:

  填注册表->初始用户的value表(把对应的ID加入)->把注册信息反馈给用户->用户在自己的页面上加入链接->开始统计

  能采集数据我们都能采到了,那么我们就开始编制ASP的统计页面。

  这一页我们叫计数页,counter.asp

  这段asp代码我们需要让它按如下的流程进行采集数据并保存数据和更新数据:

  采集用户名,判断用户名是否合法,采集访问者的信息,对信息进行加工,进行保存和更新数据库,返回logo图标。

  调用这个ASP用counter.asp?user=abc这个方式。

  采集用户名我们可以用Request对象的相应方法取得,然后检查用户表判断用户是否合法,然后取信息,用我们上面讲到的取得相应信息的方法取得信息,然后进行加工保存在数据表里,但最重要的是如何对数据进行更新,如当日每小时访问统计数,当天每小时统计数等,我们如何对每天的数据进行更新是这个程式的要点,我们可以采取几种方式,如对每天的每个小时的记录的更新我们采取在每天午夜12点更新,对每月的每一天的数据我们在月份切换的那一天进行更新。

  下面我讲一下具体的流程,以月份统计举例:

  1,得出上一次的统计的日期时间

  2,得出当前的日期时间,当前月份并转化成相应的ID

  3,判断当前月份与上一次月份是否相同,如果相同则给总数加1,当前月的ID累加1,如不相同则清零所有月份ID,只给总数ID加1

  4,根据月份统计我们可以做一下小时统计,周统计,天统计。

按如上的流程我们就可以做统计页了,要注意每个ID的分配要分类明确代表的含义要明晰。
技术文章快速查找

栏目导航
软件应用
·操作系统 ·杀毒防黑 ·应用软件
·聊天软件 ·网络软件  
Web开发
·ASP ·JavaScript ·CGI
·JSP ·VbScript ·Web服务器
·PHP ·XML  
开发语言
·VB ·VC ·ASP.NET
·Java ·C/C++ ·Delphi
数据库开发
·MySQL ·SQL/Access ·PowerBuilder
·Oracle ·DB2  
网站设计
·Flash ·Dreamweaver ·HTML/CSS
·Fireworks ·FrontPage  
平面设计
·Photoshop ·CorelDraw ·AutoCAD
·FreeHand ·Illustrator ·3DsMAX
媒体动画
·Director ·Authorware ·Maya
·视频处理    


相关软件 产品库推荐
·笔记本 ·台式机 ·服务器
·数码相机 ·手机 ·GPS
·DV摄像机 ·MP3 ·MP4
·CPU ·硬盘 ·内存
·主板 ·显卡 ·显示器
·打印机 ·投影机 ·路由器

还没人留言,抢个先,哈哈!
对"用ASP编写网站流量统计系统"的评论 - 快速回贴
内容:
  [完成后可按Ctrl+Enter发布]

百度中 用ASP编写网站流量统计系统 相关内容
Google搜索中 用ASP编写网站流量统计系统 相关内容
雅虎中 用ASP编写网站流量统计系统 相关内容
Sogou搜索中 用ASP编写网站流量统计系统 相关内容

相关软件 最新回复帖子:

·Windows Vista 中卸载软件的不同方式
·没有mysql支持时的替代方案
·一个可以发送附件及HTML格式邮件的PHP类
·AutoCAD打造精致三维鸟笼实例详解
·Photoshop自定义水晶字特效样式
·AutoCAD三维基础实例教程
·PS为黑背景长发美女照片抠图换背
·用Photoshop自制个性摩托车贴花小经验
·轻松几步将美女照片处理为手工素描
·巧用Photoshop画笔轻松绘制创意特效


  相关软件 用ASP编写网站流量统计系统相关文章
ASP数据库编程SQL常用技巧 加速ASP程序的显示速度
浅析ASP内置组件 ASP+SQL Server构建网页防火墙
ASP整合的一个SQL语句类 利用ASP打造网站论坛DIY
ASP中使用Office2000中的图表控件 ASP编程中15个非常有用的例子
在ASP中使用Oracle数据库 对ASP脚本源代码进行加密
用ASP.Net发送MailList(二) 用ASP.Net发送MailList(一)
怎样动态include文件 介绍一种效率极高的分类算法
ASP中检查没有数据提交的页面Ⅱ ASP中检查没有数据提交的页面Ⅰ
创建服务器端的ASP搜索组件(二) 创建服务器端的ASP搜索组件(一)
如何增强ASP程序性能(4) 如何增强ASP程序性能(3)