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学习笔记之数组篇
Jun 28 PHP
php中经典方法实现判断多维数组是否为空
Oct 23 PHP
PHP中使用foreach和引用导致程序BUG的问题介绍
Sep 05 PHP
php快递单号查询接口使用示例
May 05 PHP
PHP内存缓存Memcached类实例
Dec 08 PHP
Smarty变量用法详解
May 11 PHP
PHP引用返回用法示例
May 28 PHP
PHP屏蔽关键字实现方法
Nov 17 PHP
PHP中ajax无刷新上传图片与图片下载功能
Feb 21 PHP
PHP7如何开启Opcode打造强悍性能详解
May 11 PHP
PHP ajax+jQuery 实现批量删除功能实例代码小结
Dec 06 PHP
Laravel5.5 视图 - 创建视图和数据传递示例
Oct 21 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的preg_match匹配字符串长度问题解决方法
2014/05/03 PHP
Ajax PHP JavaScript MySQL实现简易无刷新在线聊天室
2016/08/17 PHP
Jquery替换已存在于element上的event的方法
2010/03/09 Javascript
JavaScript中使用正则匹配多条,且获取每条中的分组数据
2010/11/30 Javascript
javascript getElementsByTagName
2011/01/31 Javascript
Three.js源码阅读笔记(光照部分)
2012/12/27 Javascript
jQuery替换字符串(实例代码)
2013/11/13 Javascript
javascript中的取反再取反~~没有意义
2014/04/06 Javascript
JavaScript实现点击单元格改变背景色的方法
2016/02/12 Javascript
Javascript简写条件语句(推荐)
2016/06/12 Javascript
AngularJS Ajax详解及示例代码
2016/08/17 Javascript
Boostrap实现的登录界面实例代码
2016/10/09 Javascript
使用BootStrap实现标签切换原理解析
2017/03/14 Javascript
将 vue 生成的 js 上传到七牛的实例
2017/07/28 Javascript
微信小程序 本地图片按照屏幕尺寸处理
2017/08/04 Javascript
(模仿京东用户注册)用JQuery实现简单表单验证,初学者必看
2018/01/08 jQuery
js保留两位小数方法总结
2018/01/31 Javascript
原生JavaScript实现的简单放大镜效果示例
2018/02/07 Javascript
vue单页面应用打开新窗口显示跳转页面的实例
2018/09/21 Javascript
p5.js临摹旋转爱心
2019/10/23 Javascript
解决vue自定义指令导致的内存泄漏问题
2020/08/04 Javascript
[04:49]期待西雅图之战 2016国际邀请赛中国区预选赛WINGS战队赛后采访
2016/06/29 DOTA
python简单实现基于SSL的IRC bot实例
2015/06/15 Python
在Python的struct模块中进行数据格式转换的方法
2015/06/17 Python
八大排序算法的Python实现
2021/01/28 Python
Python的装饰器用法学习笔记
2016/06/24 Python
Python 递归函数详解及实例
2016/12/27 Python
python脚本之一键移动自定格式文件方法实例
2019/09/02 Python
python hashlib加密实现代码
2019/10/17 Python
Python3 利用face_recognition实现人脸识别的方法
2020/03/13 Python
python 实现仿微信聊天时间格式化显示的代码
2020/04/17 Python
Nanushka官网:匈牙利服装品牌
2019/08/14 全球购物
2014年精神文明工作总结
2014/12/23 职场文书
Python图片检索之以图搜图
2021/05/31 Python
如何判断pytorch是否支持GPU加速
2021/06/01 Python
mysql主从复制的实现步骤
2021/10/24 MySQL