网站访问量统计

网站访问量统计一 建立一个数据表 IPStat 用于存放用户信息我在 IPStat 表中存放的用户信息只包括登录用户的 IP IP Address IP 来源 IP Src 和登录时间 IP DateTime 些表的信息本人只保存一天的信息 如果要统计每个月的信息则要保存一个月 因为我不太懂对数据日志的操作 所以创建此表 所以说我笨吧 哈哈 二 在 Global asax 中获取用户信息在 Global

一、建立一个数据表IPStat用于存放用户信息

我在IPStat表中存放的用户信息只包括登录用户的IP(IP_Address),IP来源(IP_Src)和登录时间(IP_DateTime),些表的信息本人只保存一天的信息,如果要统计每个月的信息则要保存一个月。因为我不太懂对数据日志的操作,所以创建此表,所以说我笨吧,哈哈。

二、在Global.asax中获取用户信息

Global.asax的Session_Start即新会话启用时获取有关的信息,同时在这里实现在线人数、访问总人数的增量统计,代码如下:

提醒一句,别忘了下面的代码,以实现在用户离线时,将在线人数减去1.

三、将以上有关信息保存到数据库IPStat

创建了一个获取IP数据信息的类IPControl(),用来实现对数据库IPStat数据的操作,关于IPControl()类的内容,因为它是C#中对数据库的操作,以解Sql server 数据库,就能看懂它,这里就不作介绍了,请点击该链接查看。

为了实现将用户IP信息存入数据库,在上面代码中对IPControl()进行调用

参数ipAddress为用户IP,ipSrc为用户来源, ipDatetime为用户进入时间。

四、创建定时器,定时操作有关数据

对以上IPSta数据库的数据,需要创建一个或者几个定时器,并在每天晚上24时前的10秒钟内统计一天的流量,然后将其删除,把统计结果保存到另一个数据表中,供页面显示昨日访问量是调用。定时器的创建和使用请点击创建一个或者几个定时器,供你参考。

以上不妥之处请批评指正。谢谢!

在ASP.net中网站访问量统计方法—获取IP数据信息的类

///

/// 获取IP数据信息的类
///
public class IPControl
{
//常量用来表示T-SQL语句中用到的变量名称
private const string PARM_IP_ADDRESS = “@IPAddress”;
private const string PARM_IP_SRC = “@IPSrc”;
private const string PARM_IP_DATETIME = “@IPDateTime”;
//T-SQL语句
private const string SQL_INSERT_IPSTAT = “INSERT INTO IPStat VALUES(@IPAddress,@IPSrc,@IPDateTime)”;
private const string SQL_DELETE_IPSTAT = “delete from IPStat WHERE DATEDIFF(d,ip_datetime,getdate())>30”; //只保留一个月的数据
private const string SQL_SELECT_TOTAL = “SELECT COUNT(*) FROM IPStat “;
private const string SQL_SELECT_TODAY = “SELECT COUNT(*) FROM IPStat WHERE DATEDIFF(d,ip_datetime,getdate())=0”;
private const string SQL_SELECT_YESTERDAY = “SELECT COUNT(*) FROM IPStat WHERE DATEDIFF(d,ip_datetime,getdate())=1”;
private const string SQL_SELECT_MONTH = “SELECT COUNT(*) FROM IPStat WHERE DATEDIFF(d,ip_datetime,getdate())<30 and DATEDIFF(mm,ip_datetime,getdate())=0"; public IPControl()
{
}
///
/// 保存IP数据信息到数据库
///
///
///
public void AddIP(string ipAddress,string ipSrc,DateTime ipDatetime)
{
//构建连接语句字符串
StringBuilder strSQL = new StringBuilder();
//创建表示号的参数
SqlParameter[] parms = new SqlParameter[] { new SqlParameter(PARM_IP_ADDRESS, SqlDbType.NVarChar, 20),
new SqlParameter(PARM_IP_SRC, SqlDbType.NVarChar,80),
new SqlParameter(PARM_IP_DATETIME, SqlDbType.DateTime)};
SqlCommand cmd = new SqlCommand();

在Global.asax中使用定时器来统计在线人数和每天每月的访问量

一、在 Application_Start 中创建定时器

二、使用定时器每10分钟更新一次在线人数检查一次是否要存入一天流量的信息

三、创建 myTimer过程来处理在线人数和统计每日、月、年的流量


































版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/223374.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午2:13
下一篇 2026年3月17日 下午2:14


相关推荐

  • 图解GitHub和SourceTree 入门教程 使用教程

    图解GitHub和SourceTree 入门教程 使用教程–>本教程适用于github和bitbucket和gitee等主流代码托管仓库,个人认为sourceTree还是比较好用的git客户端,支持windows和macos,当然也不排斥使用纯命令行的朋友。sourceTree配合高级的命令行,可以很方便快速的应用到项目中。–>soureceTree的最新版本可能与此教程的screenshot有些许不同,但大同小异(source…

    2022年7月25日
    18
  • vue.js 三种方式安装(vue-cli)

    vue.js 三种方式安装(vue-cli)Vue.js(读音/vjuː/,类似于view)是一个构建数据驱动的web界面的渐进式框架。Vue.js的目标是通过尽可能简单的API实现响应的数据绑定和组合的视图组件。它不仅易于上手,还便于与第三方库或既有项目整合。下面介绍三种Vue.js的安装方法:1.独立版本我们可以在Vue.js的官网上直接下载vue…

    2022年6月14日
    36
  • springboot多环境配置文件_Springboot教程

    springboot多环境配置文件_Springboot教程第一步:三个配置文件,分别是默认配置application.yaml、开发配置application-dev.yaml、生产配置application-pro.yaml第二步:SpringBoot默认加载的是application.yaml,想要默认加载其他配置文件,需要在application.yaml中配置:这样加载的就是生产环境的配置了,打包打的也是application-pro.yaml文件。本地开发的时候也是加载的pro文件。第三步:想要打包的时候用pro文件,IDE开发的时候用的

    2026年4月14日
    5
  • zookeeper启动报错出现Starting zookeeper … FAILED TO START详细解决方案

    zookeeper启动报错出现Starting zookeeper … FAILED TO START详细解决方案zookeeper启动时出现/usr/local/apache-zookeeper-3.5.9-bin/bin/../没有权限等问题

    2022年10月19日
    5
  • Mysql—运行sql的小技巧

    本篇集中整理一下执行sql的小技巧,这种方式不仅带来了操作上的便捷,也可以保证数据可以数据的安全性。 1:查询数据(保证查询性能) 2:插入/更新/删除数据(保证数据安全)

    2022年2月25日
    62
  • Android项目文件夹结构分析

    Android项目文件夹结构分析

    2021年11月13日
    144

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号