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 相关文章推荐
JAVA/JSP学习系列之七
Oct 09 PHP
PHP逐行输出(ob_flush与flush的组合)
Feb 04 PHP
解析PHP生成静态html文件的三种方法
Jun 18 PHP
Smarty foreach控制循环次数的实现详解
Jul 03 PHP
浅析php数据类型转换
Jan 09 PHP
php实现12306火车票余票查询和价格查询(12306火车票查询)
Jan 14 PHP
yii框架配置默认controller和action示例
Apr 30 PHP
codeigniter框架The URI you submitted has disallowed characters错误解决方法
May 06 PHP
windows中为php安装mongodb与memcache
Jan 06 PHP
FastCGI 进程意外退出造成500错误
Jul 26 PHP
分享50个提高PHP执行效率的技巧
Dec 26 PHP
将PHP程序中返回的JSON格式数据用gzip压缩输出的方法
Mar 03 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
收音机史话 - 1960年代前后的DIY
2021/03/02 无线电
一键删除顽固的空文件夹 软件下载
2007/01/26 PHP
PHP 中英文混合排版中处理字符串常用的函数
2007/04/12 PHP
Yii2基于Ajax自动获取表单数据的方法
2016/08/10 PHP
PHP获取用户客户端真实IP的解决方案
2016/10/10 PHP
phpmyadmin下载、安装、配置教程
2017/05/16 PHP
PHP正则匹配操作简单示例【preg_match_all应用】
2017/07/10 PHP
PHP abstract 抽象类定义与用法示例
2018/05/29 PHP
javascript 新浪背投广告实现代码
2009/07/07 Javascript
JavaScript NodeTree导航栏(菜单项JSON类型/自制)
2013/02/01 Javascript
使用jQuery解决IE与FireFox下createElement方法的差异
2013/11/14 Javascript
JQuery EasyUI 日期控件如何控制日期选择区间
2014/05/05 Javascript
JS实现简单的二维矩阵乘积运算
2016/01/26 Javascript
JSON字符串和对象相互转换实例分析
2016/06/16 Javascript
全面理解闭包机制
2016/07/11 Javascript
jQuery使用serialize()表单序列化时出现中文乱码问题的解决办法
2016/07/27 Javascript
jQuery实现的瀑布流加载效果示例
2016/09/13 Javascript
pm2 部署 node的三种方法示例
2017/10/20 Javascript
ssm+vue前后端分离框架整合实现(附源码)
2020/07/08 Javascript
[15:35]教你分分钟做大人:天怒法师
2014/10/30 DOTA
[41:41]TFT vs Secret Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
深度剖析使用python抓取网页正文的源码
2014/06/11 Python
python编码最佳实践之总结
2016/02/14 Python
Pipenv一键搭建python虚拟环境的方法
2018/05/22 Python
基于Python列表解析(列表推导式)
2018/06/23 Python
Sanic框架蓝图用法实例分析
2018/07/17 Python
python中metaclass原理与用法详解
2019/06/25 Python
Proenza Schouler官方网站:纽约女装和配饰品牌
2019/01/03 全球购物
书法培训心得体会
2014/01/05 职场文书
岗位竞聘报告范文
2014/11/06 职场文书
2014年仓库管理员工作总结
2014/11/18 职场文书
鲁冰花观后感
2015/06/10 职场文书
关于践行三严三实的心得体会
2016/01/05 职场文书
php png失真的原因及解决办法
2021/11/17 PHP
MySQL多表查询机制
2022/03/17 MySQL
浅谈Redis 中的过期删除策略和内存淘汰机制
2022/04/03 Redis