php+ajax无刷新分页实例详解


Posted in PHP onDecember 07, 2015

本文实例讲述了php+ajax无刷新分页实现方法。分享给大家供大家参考,具体如下:

ajax_page_show_userinfo.php页面如下:

<meta 'Content:text/html;charset=utf-8'></meta>
<title>ajax分页演示</title>
<script language="javascript" src="js/ajaxpage.js"></script>
<div id="result">
<?php
$db=mysql_connect("localhost","root","123456");
mysql_select_db("register");
mysql_query("set names 'utf-8'");
$result=mysql_query("select * from user");
$total=mysql_num_rows($result) or die(mysql_error());
$page=isset($_GET['page'])?intval($_GET['page']):1;
$page_size=5;
$url='ajax_page_show_userinfo.php';
$pagenum=ceil($total/$page_size);
$page=min($pagenum,$page);
$prepage=$page-1;
$nextpage=($page==$pagenum?0:$page+1);
$pageset=($page-1)*$page_size;
$pagenav.="显示第".($total?($pageset+1):0)."-".min($pageset+5,$total)."记录 共<b>".$total."</b>条记录 现在是第 <b>".$page."</b> 页 ";
if($page<=1)
$pagenav.="<a style=cursor:not-allowed;>首页</a> ";
else
$pagenav.="<a onclick=javascript:dopage('result','$url?page=1') style=cursor:pointer;>首页</a> ";
if($prepage)
$pagenav.="<a onclick=javascript:dopage('result','$url?page=$prepage') style=cursor:pointer;>上一页</a> ";
else
$pagenav.="<a style=cursor:not-allowed;>上一页</a> ";
if($nextpage)
$pagenav.="<a onclick=javascript:dopage('result','$url?page=$nextpage') style=cursor:pointer;>下一页</a> ";
else
$pagenav.="<a style=cursor:not-allowed;>下一页</a> ";
if($pagenum)
$pagenav.="<a onclick=javascript:dopage('result','$url?page=$pagenum') style=cursor:pointer;>尾页</a> ";
else
$pagenav.="<a style=cursor:not-allowed;>尾页</a> ";
$pagenav.="共".$pagenum."页";
if($page>$pagenum){
  echo "error:没有此页".$page;
  exit();
}
?>
<table align="center" border="2" width="300">
 <tr bgcolor="#cccccc" align="center">
  <td>用户名</td>
  <td>用户密码</td>
 </tr>
<?php
$info=mysql_query("select * from user limit $pageset,$page_size");
while($array=mysql_fetch_array($info)){
?>
 <tr align="center">
  <td><?php echo $array['username'];?></td>
  <td><?php echo $array['password'];?></td>
 </tr>
<?php  
}
?>
</table>
<?php
echo "<p align=center>$pagenav</p>";
?>
</div>

js文件下的ajaxpage.js:

var http_request=false;
function send_request(url){//初始化,指定处理函数,发送请求的函数
  http_request=false;
 //开始初始化XMLHttpRequest对象
 if(window.XMLHttpRequest){//Mozilla浏览器
 http_request=new XMLHttpRequest();
 if(http_request.overrideMimeType){//设置MIME类别
  http_request.overrideMimeType("text/xml");
 }
 }
 else if(window.ActiveXObject){//IE浏览器
 try{
  http_request=new ActiveXObject("Msxml2.XMLHttp");
 }catch(e){
  try{
  http_request=new ActiveXobject("Microsoft.XMLHttp");
  }catch(e){}
 }
  }
 if(!http_request){//异常,创建对象实例失败
 window.alert("创建XMLHttp对象失败!");
 return false;
 }
 http_request.onreadystatechange=processrequest;
 //确定发送请求方式,URL,及是否同步执行下段代码
 http_request.open("GET",url,true);
 http_request.send(null);
}
//处理返回信息的函数
function processrequest(){
  if(http_request.readyState==4){//判断对象状态
   if(http_request.status==200){//信息已成功返回,开始处理信息
  document.getElementByIdx(reobj).innerHTML=http_request.responseText;
 }
 else{//页面不正常
  alert("您所请求的页面不正常!");
 }
  }
}
function dopage(obj,url){
  //document.getElementByIdx(obj).innerHTML="正在读取数据...";
  send_request(url);
  reobj=obj;
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
vs中通过剪切板循环来循环粘贴不同内容
Apr 30 PHP
PHP与SQL注入攻击防范小技巧
Sep 16 PHP
thinkPHP的Html模板标签使用方法
Nov 13 PHP
深入extjs与php参数交互的详解
Jun 25 PHP
微信公众号点击菜单即可打开并登录微站的实现方法
Nov 14 PHP
php编写批量生成不重复的卡号密码代码
May 14 PHP
ThinkPHP在Cli模式下使用模板引擎的方法
Sep 25 PHP
PHP读取XML格式文件的方法总结
Feb 27 PHP
thinkPHP数据查询常用方法总结【select,find,getField,query】
Mar 15 PHP
PHP中PDO事务处理操作示例
May 02 PHP
PHP递归统计系统中代码行数
Sep 19 PHP
laravel 根据不同组织加载不同视图的实现
Oct 14 PHP
64位windows系统下安装Memcache缓存
Dec 06 #PHP
windows平台中配置nginx+php环境
Dec 06 #PHP
使用PHP实现下载CSS文件中的图片
Dec 06 #PHP
PHP扩展Memcache分布式部署方案
Dec 06 #PHP
PHP微信红包API接口
Dec 05 #PHP
php实现微信发红包
Dec 05 #PHP
详解php比较操作符的安全问题
Dec 03 #PHP
You might like
php daodb插入、更新与删除数据
2009/03/19 PHP
深入PHP操作MongoDB的技术总结
2013/06/02 PHP
PHP-Fcgi下PHP的执行时间设置方法
2013/08/02 PHP
CodeIgniter输出中文乱码的两种解决办法
2014/06/12 PHP
PHP将回调函数作用到给定数组单元的方法
2014/08/19 PHP
配置eAccelerator和XCache扩展来加速PHP程序的执行
2015/12/22 PHP
Zend Framework缓存Cache用法简单实例
2016/03/19 PHP
JS控制显示隐藏兼容问题(IE6、IE7、IE8)
2010/04/01 Javascript
使用jQuery.Validate进行客户端验证(初级篇) 不使用微软验证控件的理由
2010/06/28 Javascript
jquery操作checkbox实现全选和取消全选
2014/05/02 Javascript
深入浅析JavaScript中的Function类型
2016/07/09 Javascript
相册展示PhotoSwipe.js插件实现
2016/08/25 Javascript
BootStrap轻松实现微信页面开发代码分享
2016/10/21 Javascript
微信小程序 图片加载(本地,网路)实例详解
2017/03/10 Javascript
JS实现按钮控制计时开始和停止功能
2017/07/27 Javascript
vue-infinite-loading2.0 中文文档详解
2018/04/08 Javascript
vue 设置proxyTable参数进行代理跨域
2018/04/09 Javascript
Vue与React的区别和优势对比
2020/12/18 Vue.js
vue 项目@change多个参数传值多个事件的操作
2021/01/29 Vue.js
[52:03]DOTA2-DPC中国联赛 正赛 Ehome vs iG BO3 第三场 1月31日
2021/03/11 DOTA
深入学习Python中的上下文管理器与else块
2017/08/27 Python
python中cPickle类使用方法详解
2018/08/27 Python
在python里协程使用同步锁Lock的实例
2019/02/19 Python
Python使用import导入本地脚本及导入模块的技巧总结
2019/08/07 Python
Python拼接字符串的7种方式详解
2020/03/19 Python
HTML5之WebGL 3D概述(上)—WebGL原生开发开启网页3D渲染新时代
2013/01/31 HTML / CSS
国外平面设计第一市场:99designs
2016/10/25 全球购物
在什么时候需要使用"常引用"
2015/12/31 面试题
大一自我鉴定范文
2013/10/04 职场文书
项目合作计划书
2014/01/09 职场文书
国庆节文艺活动方案
2014/02/03 职场文书
2014年驻村干部工作总结
2014/11/17 职场文书
紧急迫降观后感
2015/06/15 职场文书
2016年村党支部公开承诺书
2016/03/24 职场文书
mysql字符串截取函数小结
2021/04/05 MySQL
css 中多种边框的实现小窍门
2021/04/07 HTML / CSS