最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

.net頁面訪問次數(shù)統(tǒng)計(jì)實(shí)現(xiàn)原理與代碼

 更新時(shí)間:2013年01月17日 08:55:33   作者:  
網(wǎng)站訪問量統(tǒng)計(jì)、頁面訪問次數(shù)統(tǒng)計(jì),比較實(shí)用的一個(gè)功能,很多新手朋友都想實(shí)現(xiàn),本文處于此目的整理了一些,感興趣的朋友可以了解下

數(shù)據(jù)庫準(zhǔn)備:建立一個(gè)表total里面數(shù)據(jù)項(xiàng)為totals類型為varchar 50
.net語言環(huán)境:C#
global.asax里的代碼

復(fù)制代碼 代碼如下:

<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<script language="C#" runat="server">
string strSelect;
SqlConnection conPubs;
SqlDataAdapter dadPubs;
DataSet dstTitles;
DataRow drowTitle;
void Session_Start(Object sender , EventArgs e)
{
if ( Application[ "SessionCount" ] == null ) {
    Application[ "SessionCount" ] = 0;
    strSelect = "SELECT totals From total";
    conPubs = new SqlConnection(@"Server=localhost;Integrated Security=SSPI;Database=test");
    dadPubs = new SqlDataAdapter(strSelect, conPubs);
    dstTitles = new DataSet();
    dadPubs.Fill(dstTitles, "total");
    drowTitle = dstTitles.Tables["total"].Rows[0];
    Application[ "SessionCount" ]=System.Convert.ToInt32(drowTitle["totals"].ToString().Trim());
}
}
void Session_End() {
    Application["SessionCount"] = 0;  
}
</script>

SessionCount.aspx里的代碼
復(fù)制代碼 代碼如下:

void Page_Load(Object sender , EventArgs e)
{
    int total = 0;
    string strSelect;
    SqlConnection conPubs;
    //要執(zhí)行某項(xiàng)數(shù)據(jù)操作要用SqlCommand方式調(diào)用
    SqlCommand cmdSql;
    //為了防止同文檔里的其他頁面在訪問時(shí)也進(jìn)行累加運(yùn)算
    int intHits = 0;
    intHits = (int)Application["SessionCount"];
    intHits += 1;
    Application["SessionCount"] = intHits;
    lblSessionCount.Text = Application[ "SessionCount" ].ToString();
    total = (int)Application["SessionCount"];
    strSelect = "update total set totals= @total";
    conPubs = new SqlConnection(@"Server=localhost;Integrated Security=SSPI;Database=test");
    cmdSql = new SqlCommand(strSelect, conPubs);
    cmdSql.Parameters.Add("@total", total);
    conPubs.Open();
    cmdSql.ExecuteNonQuery();
    conPubs.Close();
}

上段代碼有個(gè)小問題,就是過了一段時(shí)間后,Application["SessionCount"]的值會變成0,而且由于前面設(shè)置了一個(gè)初始的0,也會連帶的把數(shù)據(jù)庫里原來保存的值更新為0起始.
更改后
global.asax
復(fù)制代碼 代碼如下:

<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<script language="C#" runat="server">
string strSelect;
SqlConnection conPubs;
SqlDataAdapter dadPubs;
DataSet dstTitles;
DataRow drowTitle;
void Session_Start(Object sender , EventArgs e)
{
if ( Application[ "SessionCount" ] == null ) {
    Application[ "SessionCount" ] = 0;
    strSelect = "SELECT totals From total";
    conPubs = new SqlConnection(@"Server=localhost;Integrated Security=SSPI;Database=test");
    dadPubs = new SqlDataAdapter(strSelect, conPubs);
    dstTitles = new DataSet();
    dadPubs.Fill(dstTitles, "total");
    drowTitle = dstTitles.Tables["total"].Rows[0];
    Application[ "SessionCount" ]=System.Convert.ToInt32(drowTitle["totals"].ToString().Trim());
}
}
void Session_End() {
    Application["SessionCount"] = null;  
}
</script>

SessionCount.aspx
復(fù)制代碼 代碼如下:

<script language="C#" runat="server">
void Page_Load(Object sender , EventArgs e)
{
    int total = 0;
    string strSelect;
    SqlConnection conPubs;
    //要執(zhí)行某項(xiàng)數(shù)據(jù)操作要用SqlCommand方式調(diào)用
    SqlCommand cmdSql;
    //為了防止同文檔里的其他頁面在訪問時(shí)也進(jìn)行累加運(yùn)算
    int intHits = 0;
    intHits = (int)Application["SessionCount"];
    intHits += 1;
    total = intHits;
    lblSessionCount.Text = intHits.ToString();
     strSelect = "update total set totals= @total";
    conPubs = new SqlConnection(@"Server=localhost;Integrated Security=SSPI;Database=test");
    cmdSql = new SqlCommand(strSelect, conPubs);
    cmdSql.Parameters.Add("@total", total);
    conPubs.Open();
    cmdSql.ExecuteNonQuery();
    conPubs.Close();
    Application["SessionCount"] = null;
}
</script>

相關(guān)文章

最新評論

顺昌县| 闽侯县| 富民县| 莱州市| 八宿县| 修水县| 博客| 句容市| 绥宁县| 延安市| 西贡区| 凤城市| 柘荣县| 九龙城区| 肃宁县| 泰兴市| 搜索| 繁峙县| 庆城县| 玛纳斯县| 四平市| 禄劝| 石河子市| 介休市| 军事| 额济纳旗| 讷河市| 遂川县| 镶黄旗| 共和县| 临高县| 伊金霍洛旗| 蓬莱市| 囊谦县| 英山县| 新龙县| 当雄县| 南漳县| 临朐县| 改则县| 富源县|