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 29 PHP
调整优化您的LAMP应用程序的5种简单方法
Jun 26 PHP
php tp验证表单与自动填充函数代码
Feb 22 PHP
探讨:如何使用PhpDocumentor生成文档
Jun 25 PHP
PHP json_encode中文乱码问题的解决办法
Sep 09 PHP
php中__destruct与register_shutdown_function执行的先后顺序问题
Oct 17 PHP
使用 PHPStorm 开发 Laravel
Mar 24 PHP
PHP入门教程之操作符与控制结构流程详解
Sep 09 PHP
php加密解密字符串示例
Oct 13 PHP
php微信公众号开发之简答题
Oct 20 PHP
php分享朋友圈的实现代码
Feb 18 PHP
laravel框架实现去掉URL中index.php的方法
Oct 12 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 xml文件操作实现代码(二)
2009/03/20 PHP
php使用base64加密解密图片示例分享
2014/01/20 PHP
PHP实现AES256加密算法实例
2014/09/22 PHP
PHP使用HTML5 FormData对象提交表单操作示例
2019/07/02 PHP
使用JavaScript动态设置样式实现代码(2)
2013/01/25 Javascript
页面加载完后自动执行一个方法的js代码
2014/09/06 Javascript
jQuery中closest()函数用法实例
2015/01/07 Javascript
JavaScript编程中的Promise使用大全
2015/07/28 Javascript
javascript中eval解析JSON字符串
2016/02/27 Javascript
jQuery设置单选按钮radio选中/不可用的实例代码
2016/06/24 Javascript
解析js如何获取css样式
2016/12/11 Javascript
Vue.js 2.0窥探之Virtual DOM到底是什么?
2017/02/10 Javascript
vue的mixins属性详解
2018/03/14 Javascript
AngularJS模态框模板ngDialog的使用详解
2018/05/11 Javascript
详解element-ui日期时间选择器的日期格式化问题
2019/04/08 Javascript
微信小程序利用Canvas绘制图片和竖排文字详解
2019/06/25 Javascript
nodejs中的异步编程知识点详解
2021/01/17 NodeJs
[05:03]显微镜下的DOTA2第十期——Ti3豪之超神幽鬼
2014/06/23 DOTA
浅谈Python接口对json串的处理方法
2018/12/19 Python
详解python使用turtle库来画一朵花
2019/03/21 Python
Python日期时间Time模块实例详解
2019/04/15 Python
Python转换itertools.chain对象为数组的方法
2020/02/07 Python
Python阶乘求和的代码详解
2020/02/14 Python
K最近邻算法(KNN)---sklearn+python实现方式
2020/02/24 Python
缅甸网上购物:Shop.com.mm
2017/12/05 全球购物
巴黎卡诗加拿大官网:Kérastase加拿大
2018/11/12 全球购物
美国球迷装备的第一来源:FOCO
2020/07/03 全球购物
.NET程序员的几道面试题
2012/06/01 面试题
物业公司的岗位任命书
2014/06/06 职场文书
个人对照检查材料思想汇报(四风问题)
2014/09/25 职场文书
护理工作个人总结
2015/03/03 职场文书
2015年超市收银员工作总结
2015/04/25 职场文书
2015年中学校长工作总结
2015/05/19 职场文书
学困生转化工作总结
2015/08/13 职场文书
javascript之Object.assign()的痛点分析
2022/03/03 Javascript
Nginx报404错误的详细解决方法
2022/07/23 Servers