网站访问量的统计

社会主义新天地 提交于 2019-11-26 11:28:15
<script runat="server">

   
void Application_Start(object sender, EventArgs e)
    {
       
// 在应用程序启动时运行的
        System.Data.SqlClient.SqlConnection con = DBConnect.createConnection();
        con.Open();
        System.Data.SqlClient.SqlCommand com
= new System.Data.SqlClient.SqlCommand(
           
"select * from total", con);
       
int count =System.Convert.ToInt32(com.ExecuteScalar());
        con.Close();
       
        Application[
"total"] = count;
        Application[
"online"] = 0;

    }
   
   
void Application_End(object sender, EventArgs e)
    {
       
//  在应用程序关闭时运行的代码
        System.Data.SqlClient.SqlConnection con = DBConnect.createConnection();
        con.Open();
        System.Data.SqlClient.SqlCommand com
= new System.Data.SqlClient.SqlCommand(
           
"update total set num="+Application["total"].ToString(), con);
        com.ExecuteNonQuery();
        con.Close();

    }
       
   
void Application_Error(object sender, EventArgs e)
    {
       
// 在出现未处理的错误时运行的代码

    }

   
void Session_Start(object sender, EventArgs e)
    {
       
// 在新会话启动时运行的代码
        Session.Timeout = 1;
        Application.Lock();
        Application[
"total"] = System.Convert.ToInt32(Application["total"]) + 1;
        Application[
"online"] = System.Convert.ToInt32(Application["online"]) + 1;
        Application.UnLock();
    }

   
void Session_End(object sender, EventArgs e)
    {
       
// 在会话结束时运行的代码。
       
// 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
       
// InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer
       
// 或 SQLServer,则不会引发该事件。
        Application.Lock();
        Application[
"online"] = System.Convert.ToInt32(Application["online"]) - 1;
        Application.UnLock();
    }
      
</script>

转载于:https://www.cnblogs.com/dyc988/archive/2008/08/19/1271153.html

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!