/// <summary>
/// 在应用程序启动时运行的代码,先读取一个基数。。
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void Application_Start(object sender, EventArgs e)
{
Application.Lock() //临界变量,使用加锁功能,其他用户不能访问。
Application["allVisitCount"] = ReadCont()//ReadCont()可以从数据库中得到,也可以从一个txt中得到,看你用什么了。
Application["nowCount"] = 0
Application.UnLock() //临界变量被解锁。
}
void Application_End(object sender, EventArgs e)
{
WrightCont(Application["allVisitCount"].ToString())
// WrightCont()函数就是把你的所有访问量值记录到数据库或者txt中,看你自己实现了
}
void Application_Error(object sender, EventArgs e)
{
WrightCont(Application["allVisitCount"].ToString())
}
//对于每一个新的用户,所有的访问量和当前访问量都要加一
void Session_Start(object sender, EventArgs e)
{
Application.Lock() //临界变量,使用加锁功能,其他用户不能访问。
Application["allVisitCount"] = Int32.Parse(Application["allVisitCount"].ToString()) + 1
Application["nowCount"] = Int32.Parse(Application["nowCount"].ToString()) + 1
Application.UnLock() //临界变量被解锁。
}
//当一个用户退出时,当前在线人数减一,不过要取决与你的session时间。
void Session_End(object sender, EventArgs e)
{
Application.Lock() //临界变量,使用加锁功能,其他用户不能访问。
Application["nowCount"] = Int32.Parse(Application["nowCount"].ToString()) - 1
Application.UnLock() //临界变量被解锁。
}
在具体的页面里。。你就可以通过
<tt>---------欢迎您,本站的第<%=Application["allVisitCount"]%>位访客!-------</tt><br />
<tt>---------当前在线人数<%=Application["nowCount"]%>位-------</tt><br />
读取数据库总访问人数输出到一个变量$renshu,变量值+1。如果是php:echo “你是今天第多少位访客:$renshu”
如果没有数据库的话可以使用json或者xml记录数据。原理一样。
几人在线这个就比较复杂了。
也可以百度,网站访问统计
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)