中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

asp.net下判斷用戶什么時候離開,以什么方式離開

站點用戶統計是每一個站點比有得功能,但是很少有人實現在線用戶統計得絕對精確或者說是相對精確,基于Web得原理,服務器不會主動知道用戶通過關閉瀏覽器離開站點,這時候只能依靠服務器端變量Session得過期來判斷用戶是否離開,但用戶瀏覽器是可以知道自己何時關閉得,代碼也非常簡單 

如下: 

function body_onunload() 



   if(window.event.clientX<0) 

   { 

          alert('the broswer is closing...'); 

   } 

    else 

    { 

         alert('the user is refreshing or navigating away...); 

    } 


以上代碼就會判斷用戶是關閉瀏覽器還是刷新或者導航到其他頁面了! 


--------------------------------------------------------------------------------------------------- 
下午的時候,用代碼測試了一下,主要是利用上面的js函數,結合ajax技術,由于對ajax技術了解的不是很透徹,前后嘗試了三次。 
現將嘗試結果與大家分享,大家也多給點意見 
首先我嘗試了在ajax方法中訪問Application,企圖用Application變量來記錄在線人數。嘗試代碼: 
[AjaxPro.AjaxMethod] 
  public int Logoff()  
  {    
       Application["onlineCount"]=Convert.ToInt32(Application["onlineCount"])-1; 
      return      Convert.ToInt32(Application["onlineCount"]); 
  } 
嘗試失敗!估計是ajax不能訪問應用程序的靜態變量和Application變量。第一次使用AjaxPro不知道如何設置可以訪問Session,以前使用的是ajax.dll,設置成可以讀寫Session,嘗試結果可能發生改變! 
第二種我嘗試了用文本文件記錄在線人數,仍然失敗! 
第三中,采用數據庫!嘗試成功。 
代碼如下: 
[AjaxPro.AjaxMethod] 
  public int Logoff()  
  {    
   SqlConnection conn = new  SqlConnection("server=.;database=test; uid=sa;pwd=123"); 
   SqlCommand cmd = new SqlCommand("update OnlineCount set num=num-1",conn); 
   try 
   { 
    conn.Open(); 
    cmd.ExecuteNonQuery(); 
   } 
   catch(Exception ex) 
   { 
    EventLog.WriteEntry(ex.Source,ex.Message); 
   } 
   finally 
   { 
    conn.Close(); 
   } 

   cmd = new SqlCommand("select top 1 num from OnlineCount",conn); 
   try 
   { 
    conn.Open(); 
    return Convert.ToInt32(cmd.ExecuteScalar()); 
   } 
   catch(Exception ex) 
   { 
    EventLog.WriteEntry(ex.Source,ex.Message); 
   } 
   finally 
   { 
    conn.Close(); 
   } 
   return 0; 

  } 
前臺頁面縮 


 1    <script language="Javascript"> 
 2<!-- 
 3       function leave()  
 4       {  
 5          alert(window.event.clientX); 
 6          if(window.event.clientX<0) 
 7          { 
 8            WebApplication3.WebForm1.Logoff().value; 
 9          } 
10       } 
11//--> 
12        </script> 
13    </HEAD> 
14    <body onunload="leave()"> 
這樣的話,在對安全行和及時性要求比較嚴格的情礦下,將一個頁面設置為主頁面,如果該頁面關閉,表示用戶已經退出。電子郵件系統就可以使用該方法。 

AspNet技術asp.net下判斷用戶什么時候離開,以什么方式離開,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 99视频在线免费观看 | 天天操 夜夜操 | 欧美一区二区在线免费观看 | 精品国产黄色片 | 天天夜干 | 亚洲欧美综合 | 国产一区在线视频 | 亚洲成人免费视频 | 国产日韩亚洲欧美 | 成人区精品 | 国产97人人超碰caoprom | 亚洲精品日韩综合观看成人91 | 日韩资源 | 亚洲一区二区三区 | 欧美1区| 精品视频一区二区三区 | 亚洲精品一区国产精品 | 免费色网址 | 欧美中文字幕一区 | 亚洲精品久久国产高清情趣图文 | 一区二区三区四区日韩 | 国产亚洲精品成人av久久ww | 一区二区三区免费 | 玖玖玖在线 | 九九久久久 | 亚洲一区综合 | 日韩一区二区三区在线 | 欧美精品在线一区二区三区 | 人人人干 | 69福利影院 | 黄色片在线观看网址 | 欧美一级做a爰片免费视频 国产美女特级嫩嫩嫩bbb片 | 亚洲三区视频 | 天天操天天干天天爽 | 久久黄色网 | 青青草视频网 | 久久久国产一区 | 日韩在线免费视频 | 天天爽夜夜爽精品视频婷婷 | 日韩精品一区二区三区中文字幕 | 亚洲人成人网 |