首先介紹一下所涉及的數據表結構,四個字段:

復制代碼 代碼如下: uid<int(10)> :用戶id session_id<varchar(40)> :用戶登錄后系統產生的session_id,PHP可是使用session_id()函數獲取 login " /> 国产精品18久久久久久欧美网址,亚洲欧美一区二区三区蜜芽,亚洲精品AV一区午夜福利

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

php下統計用戶在線時間的一種嘗試

下面列出幾個比較常用的方法:

首先介紹一下所涉及的數據表結構,四個字段:

復制代碼 代碼如下:
uid<int(10)> :用戶id
session_id<varchar(40)> :用戶登錄后系統產生的session_id,php可是使用session_id()函數獲取
login_time<int(10)> :登錄時間
logout_time<int(10)> :登出時間

1. 客戶端定時發送請求到服務器端。實現方法是在用戶登錄后,將uid,session_id,login_time插入一條記錄,然后在客戶端js設定一個計時器,比如每10分鐘向服務器端發送一個請求,以此來達到更新登出時間的目的,當然這個間隔時間設定的越短,數據可能會越準確,不過相應的系統的負載也會越高,這個可以根據實際情況設定一個合適的值。這種方法廣泛應用于webgame上,因為webgame的幾乎所有請求都是ajax請求,不用刷新頁面,一旦刷新頁面,這個計時器就失去了價值,這也是這個方法的局限性。
2. 服務器設定一個定時輪詢的腳本。這個方法是在服務器端寫一個定時執行的腳本,比如5分鐘執行一次,根據數據庫中的記錄來判斷每個會話的session_id是否還存在于服務器上,如果存在就更新logout_time,不存在就跳過。這樣也能比較準確的統計在線時間,不過缺點是需要有服務器的控制權,不然無法設定定時腳本,linux系統可以通過crontab實現,windows系統可以通過計劃任務來完成。如果你只是買的虛擬主機,那么這個方法也同樣不適合你。
3. 在用戶每次活動時更新一下登出時間。這樣在用戶不活動或者退出的時候,登出時間就自然而然的存在于數據庫里了,這也是本文著重討論的方案。下面給出實現方法。
首先,在用戶登錄成功后,記錄下其uid,session_id,并將現在時間作為登陸時間,現在時間+600s作為登出時間,插入數據庫。
復制代碼 代碼如下:
$uid = $_SESSION['uid'] = $info['id'];
$session_id = $_SESSION['session_id'] = session_id();
$login_time = time();
$logout_time = time()+600;
$sql = "INSERT INTO member_login (uid,session_id,login_time,logout_time) values($uid,'$session_id',$login_time,$logout_time)";
mysql_query($sql);

然后在用戶每次活動,也就是每點擊一個頁面時,如果session存在也就是處于登錄狀態時,更新用戶登出時間
復制代碼 代碼如下:
if($_SESSION['uid']){
$uid = $_SESSION['uid'];
$session_id = $_SESSION['session_id'];
$logout_time = time()+600;
$sql = "UPDATE member_login SET logout_time=$logout_time WHERE uid=$uid AND session_id='$session_id'";
mysql_query($sql);
}

這種方法的優點是相對來說實現起來比較簡單,能夠適用于大多數的網站,沒有額外的服務器需求,而且也可以比較準確的統計用戶的在線時間。
缺點也很明顯,增加了數據庫的更新操作,增加了系統的負載,不過對于中小型網站來說應該不是問題。

php技術php下統計用戶在線時間的一種嘗試,轉載需保留來源!

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

主站蜘蛛池模板: 6080yy 久久 亚洲 日本 | 国产 浪潮AV性色四虎 | 亚洲AV无码专区国产乱码网站 | 97精品视频在线观看 | 99九九99九九九视频精品 | 欧美日韩国产在线一区二区 | 校花娇喘呻吟校长陈若雪视频 | 午夜日韩久久影院 | 在线观看亚洲 日韩 国产 | 亚洲国产精品天堂在线播放 | 芭乐草莓樱桃丝瓜18岁大全 | 国产高潮久久精品AV无码 | 亚洲色大成网站www久久九九 | 国产精品18久久久久网站 | 真人女人无遮挡内谢免费视频% | 内射无码AV-区二区在线观看 | 国产精品2020观看久久 | 久色视频网 | 好妞操 | 三级全黄的视频 | 国产精品久久久久久久久齐齐 | 免费在线视频一区 | 忘忧草日本在线社区WWW电影 | 亚洲成年人在线观看 | 国产97精品久久久天天A片 | 益日韩欧群交P片内射中文 艺术片 快播 | 国产电影无码午夜在线播放 | 好爽胸大好深好多水 | 日本熟妇乱妇熟色A片蜜桃亚洲 | 国产精品自在拍在线播放 | 国产永久免费观看视频软件 | 久久热免费观看视频 | 娇妻在床上迎合男人 | 白人大战34厘米黑人BD | 亚洲精品久久久无码一区二区 | 忘忧草日本在线社区WWW电影 | 欧美 国产 日产 韩国 在线 | 日日摸天天添天天添无码蜜臀 | 日韩精品 中文字幕 有码 | Chineseman瘦老头77 | 国内精品久久久久久久试看 |