PHP与jquery实时显示网站在线人数实例详解


Posted in PHP onDecember 02, 2016

我们在一些应用中需要动态展示数据,比如当前在线人数,当前交易总额,当前汇率等等,前端页面需要实时刷新获取最新数据。本文将结合实例给大家介绍使用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文件从而达到了实时显示在线人数的功能了。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
PHP中的正规表达式(二)
Oct 09 PHP
PHP 的 __FILE__ 常量
Jan 15 PHP
PHP简单系统查询模块代码打包下载
Jun 07 PHP
不要轻信 PHP_SELF的安全问题
Sep 05 PHP
PHP更新购物车数量(表单部分/PHP处理部分)
May 03 PHP
php curl选项列表(超详细)
Jul 01 PHP
使用PHP下载CSS文件中的图片的代码
Sep 24 PHP
彻底删除thinkphp3.1案例blog标签的方法
Dec 05 PHP
php版微信开发Token验证失败或请求URL超时问题的解决方法
Sep 23 PHP
php 实现Hash表功能实例详解
Nov 29 PHP
简单谈谈PHP中的Reload操作
Dec 12 PHP
PHP自定义错误处理的方法分析
Dec 19 PHP
谈谈php对接芝麻信用踩的坑
Dec 01 #PHP
PHP自定义函数获取汉字首字母的方法
Dec 01 #PHP
phpmailer绑定邮箱的实现方法
Dec 01 #PHP
thinkPHP实现多字段模糊匹配查询的方法
Dec 01 #PHP
thinkPHP商城公告功能开发问题分析
Dec 01 #PHP
thinkPHP订单数字提醒功能的实现方法
Dec 01 #PHP
PHP 芝麻信用接入的注意事项
Dec 01 #PHP
You might like
PHP提交表单失败后如何保留已经填写的信息
2014/06/20 PHP
Yii1.1框架实现PHP极光推送消息通知功能
2018/09/06 PHP
Javascript+XMLHttpRequest+asp.net无刷新读取数据库数据
2009/08/09 Javascript
基于jQuery的倒计时插件代码
2011/05/07 Javascript
深入解析JavaScript中的变量作用域
2013/12/06 Javascript
jQuery聚合函数实例
2015/05/21 Javascript
一道JS前端闭包面试题解析
2015/12/25 Javascript
JavaScript模拟push
2016/03/06 Javascript
Bootstrap中的Panel和Table全面解析
2016/06/13 Javascript
Angular中$cacheFactory的作用和用法实例详解
2016/08/19 Javascript
jQuery实现输入框邮箱内容自动补全与上下翻动显示效果【附demo源码下载】
2016/09/20 Javascript
jQuery中的siblings()是什么意思(推荐)
2016/12/29 Javascript
微信小程序加载机制及运行机制图解
2019/11/27 Javascript
vue实现日历表格(element-ui)
2020/09/24 Javascript
原生微信小程序开发中 redux 的使用详解
2021/02/18 Javascript
python 数字类型和字符串类型的相互转换实例
2018/07/17 Python
Python 输出时去掉列表元组外面的方括号与圆括号的方法
2018/12/24 Python
基于 Django 的手机管理系统实现过程详解
2019/08/16 Python
Django 解决开发自定义抛出异常的问题
2020/05/21 Python
CSS3中的opacity属性使用教程
2015/08/19 HTML / CSS
Street One瑞士:德国现代时装公司
2019/10/09 全球购物
Java编程面试题
2016/04/04 面试题
abstract class和interface有什么区别
2013/08/04 面试题
市场营销专业个人自荐信格式
2013/09/21 职场文书
网游商务专员求职信
2013/10/15 职场文书
英文请假条
2014/04/11 职场文书
优秀党支部书记事迹材料
2014/05/29 职场文书
房地产端午节活动方案
2014/08/24 职场文书
培训班开班主持词
2015/07/02 职场文书
政协常委会议主持词
2015/07/03 职场文书
领导干部学习三严三实心得体会
2016/01/05 职场文书
妇联2016年六一国际儿童节活动总结
2016/04/06 职场文书
公司周年庆寄语
2019/06/21 职场文书
基于Python实现的购物商城管理系统
2021/04/27 Python
CSS3新特性详解(五):多列columns column-count和flex布局
2021/04/30 HTML / CSS
SqlServer数据库远程连接案例教程
2021/07/15 SQL Server