一個通過ajax實現(xiàn)的點擊量統(tǒng)計功能

字號:

今天 寫個很簡單的功能只當(dāng)是一個小結(jié)。
    點擊量的基本流程都是這樣的:在點鏈接的時候,先轉(zhuǎn)到你設(shè)定的一個統(tǒng)計地址,然后重定向到真實地址。
    通過ajax來實現(xiàn)這個流程。以實現(xiàn)友情鏈接和廣告公用這個功能。
    先說說后臺代碼部分
    首先是友情鏈接部分的,他是有后臺代碼生成HTML代碼如下
    _GoodLink1.Append("·").Append(dr["LJMC"]).Append("");
    然后是廣告部分,廣告部分是由代碼生成動態(tài)js再由頁面引用js顯示廣告,下面是關(guān)鍵代碼;
    sb.Append("’ target=’_blank’ onclick=");sb.Append(""javascript:UpdateTraffs(’AD_TAB’,’GGID’," + dv.Table.Rows[k]["GGID"] + ",’DJCS’)");sb.Append("">");
    這個里面最重要的是這個變量符的使用,這樣以保證在js中是以onclick="javascript:UpdateTraffs’AD_TAB’,’GGID’,1,’DJCS’)"的形式
    中間數(shù)據(jù)參數(shù)的傳遞的關(guān)鍵就是js代碼如下
    function UpdateTraffs(tabName,mainkey,keyValue,column)//要驗證的控件ID,驗證的結(jié)果,驗證的類型email|user
    {
    var http_request;
    if (window.XMLHttpRequest)
    {//對于Mozilla、Netscape、Safari等瀏覽器,創(chuàng)建XMLHttpRequest對象
    http_request = new XMLHttpRequest();
    }
    else if (window.ActiveXObject)
    {// 對于Internet Explorer瀏覽器,創(chuàng)建XMLHttpRequest
    try
    {
    http_request = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e)
    {
    try
    {
    http_request = new ActiveXObject("Microsoft.XMLHTTP");
    }
    catch (e)
    {}
    }
    }
    http_request.open("POST","/Function/Traffic.aspx?_tabName="+tabName+"&&_mainkey="+mainkey+"&&_keyValue="+keyValue+"&&_column="+column+"",false);
    http_request.send();
    }
    再就是另一個執(zhí)行頁面這里面的代碼很簡單就不寫了。
    最后附帶一個存儲過程如下
    CREATE PROCEDURE PRO_Traffic_Update---更新點擊量
    @TabName varchar(30),
    @MainKey nvarchar(20),
    @KeyValue VARCHAR(20),
    @Column varchar(4)
    AS
    declare @sqlStr varchar(100)
    SET @sqlStr=’UPDATE ’+@TabName+’ SET ’+@Column+’=’+@Column+’+1 where ’+@MainKey+’=’’’+@KeyValue+’’’’
    exec(@sqlStr)