在ASP.net中网站拜候量统计办法[网络技术]
本文“在ASP.net中网站拜候量统计办法[网络技术]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
一位QQ好友问我个人网站拜候量是若何统计的,由于本人初学做网站,水平有限,所介绍的办法大概是笨办法,但在我网站上可以凑合着利用,但愿大家多多指教.
1、成立一个数据表IPStat用于存放用户信息
我在IPStat表中存放的用户信息只包含登录用户的IP(IP_Address),IP根源(IP_Src)和登录时间(IP_DateTime),些表的信息本人只保存一天的信息,假如要统计每个月的信息则要保存一个月.因为我不太懂对数据日记的操作,所以成立此表,所以说我笨吧,哈哈.
2、在Global.asax中获得用户信息
在Global.asax的Session_Start即新会话启用时获得有关的信息,同时在这里实目前线人数、拜候总人数的增量统计,代码以下:
void Session_Start(object sender, EventArgs e)
{
//获得拜候者的IP
string ipAddress = Request.ServerVariables["REMOTE_ADDR"];
//获得拜候者的根源
string ipSrc;
//判断能否从搜索引擎导航过来的
if (Request.UrlReferrer == null)
{
ipSrc = "";
}
else
{
//获得根源地址
ipSrc = Request.UrlReferrer.ToString();
}
//获得拜候时间
DateTime ipDatetime = DateTime.Now;
//保存IP信息到数据库中
IPControl cont = new IPControl();
cont.AddIP(ipAddress, ipSrc, ipDatetime);
//获得用户拜候的页面
string pageurl = Request.Url.ToString();
//判断拜候的能否是默许页
if (pageurl.EndsWith("IPStat.aspx"))
{
//锁定变量
Application.Lock();
//为页面拜候量+1
Application["StatCount"] = int.Parse(Application["StatCount"].ToString()) + 1;
//解锁
Application.UnLock();
}
//锁定变量
Session.Timeout = 10; //设定超时为10分钟
Application.Lock();
Application["countSession"] = Convert.ToInt32(Application["countSession"]) + 1; //拜候总人数+1
Application["onlineWhx"] = (int)Application["onlineWhx"] + 1; //在线人数加+1
Session["login_name"] = null;
//解锁
Application.UnLock();
}
提醒一句,别忘了下面的代码,以实目前用户离线时,将在线人数减去1.
void Session_End(object sender,
以上是“在ASP.net中网站拜候量统计办法[网络技术]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |