萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> PHP與jquery實時顯示網站在線人數的例子

PHP與jquery實時顯示網站在線人數的例子

在線人數最簡單的就是直接利用js調用php了,這樣可以顯示出有多少人訪問了本站,如果要在用戶未刷新頁面的狀態實時顯示用戶在線人數,我們可以利用jquery ajax來實現,具體看個例子。

我們在一些應用中需要動態展示數據,比如當前在線人數,當前交易總額,當前匯率等等,前端頁面需要實時刷新獲取最新數據。本文將結合實例給大家介紹使用jQuery和PHP來實現動態數字展示效果。


本例假設要在頁面上動態展示(無需刷新整個頁面,只是局部刷新動態數字)當前在線用戶數,常見在一些統計平台上應用。在HTML頁面中只需定義以下結構:
 

 代碼如下 復制代碼 <div class="count">當前在線:<span id="number"></span></div>


首先我們要定義一個動畫過程,使用jQuery的animate()函數實現從一個數字到另一個數字的變換過程,以下magic_number()自定義函數將代碼整合如下:
 

 代碼如下 復制代碼 function magic_number(value) {
    var num = $("#number");
    num.animate({count: value}, {
        duration: 500,
        step: function() {
            num.text(String(parseInt(this.count)));
        }
    });
};

然後update()函數使用了jQuery的$.getJSON()向後台number.php發送了一個ajax請求,在得到PHP相應後,調用magic_number()展示最新的數字。為了能看到更好的效果,我們使用setInterval()設置代碼執行的間隔時間。
 

 代碼如下 復制代碼 function update() {
    $.getJSON("number.php?jsonp=?", function(data) {
        magic_number(data.n);
    });
};
 
setInterval(update, 5000); //5秒鐘執行一次
update();

PHP

實際項目中,我們會使用PHP獲取數據庫中的最新數據,然後通過PHP返回給前端。本例為了更好的演示,使用隨機數字,最後以json格式返回給前端js,number.php代碼如下:

 代碼如下 復制代碼

$total_data = array(
    'n' => rand(0,999)
);    
echo $_GET['jsonp'].'('. json_encode($total_data) . ')';  

原理其實非常的簡單就是利用js settimeout實現過幾秒加載一個php文件從而達到了實時顯示在線人數的功能了。

copyright © 萬盛學電腦網 all rights reserved