当前位置:首页 > PHP教程 > php应用 > 列表

PHP+jquery实时显示网站在线人数的方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-05-05 18:46:21 浏览: 评论:0 

这篇文章主要介绍了PHP+jquery实时显示网站在线人数的方法,较为详细的分析了实时显示在线人数的原理与代码实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了PHP+jquery实时显示网站在线人数的方法。分享给大家供大家参考。具体分析如下:

在线人数最简单的就是直接利用js调用php,这样可以显示出有多少人访问了本站,如果要在用户未刷新页面的状态实时显示用户在线人数,我们可以利用jquery ajax来实现。

我们在一些应用中需要动态展示数据,比如当前在线人数,当前交易总额,当前汇率等等,前端页面需要实时刷新获取最新数据。这里我们将结合实例给大家介绍使用jQuery和PHP来实现动态数字展示效果。

本例假设要在页面上动态展示(无需刷新整个页面,只是局部刷新动态数字)当前在线用户数,常见在一些统计平台上应用。在HTML页面中只需定义以下结构:

<div class="count">当前在线:<span id="number"></span></div>

首先我们要定义一个动画过程,使用jQuery的animate()函数实现从一个数字到另一个数字的变换过程,以下magic_number()自定义函数将代码整合如下:

  1. function magic_number(value) { 
  2.     var num = $("#number"); 
  3.     num.animate({count: value}, { 
  4.         duration: 500, 
  5.         step: function() { 
  6.             num.text(String(parseInt(this.count))); 
  7.         } 
  8.     }); 
  9. }; 

然后update()函数使用了jQuery的$.getJSON()向后台number.php发送了一个ajax请求,在得到PHP相应后,调用magic_number()展示最新的数字。为了能看到更好的效果,我们使用setInterval()设置代码执行的间隔时间,代码如下:

  1. function update() { 
  2.     $.getJSON("number.php?jsonp=?"function(data) { 
  3.         magic_number(data.n); 
  4.     }); 
  5. }; 
  6.  
  7. setInterval(update, 5000); //5秒钟执行一次 
  8. update(); 

PHP代码部分:

实际项目中,我们会使用PHP获取数据库中的最新数据,然后通过PHP返回给前端。本例为了更好的演示,使用随机数字,最后以json格式返回给前端js,number.php代码如下:

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

原理其实非常的简单就是利用js settimeout实现过几秒加载一个php文件从而达到了实时显示在线人数的功能了。

Tags: PHP+jquery在线人数

分享到: