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 相关文章推荐
PHP中文URL编解码(urlencode()rawurlencode()
Jul 03 PHP
PHP的substr_replace将指定两位置之间的字符替换为*号
May 04 PHP
PHP中的cookie不用刷新就生效的方法
Feb 04 PHP
PHP中空字符串介绍0、null、empty和false之间的关系
Sep 25 PHP
php批量上传的实现代码
Jun 09 PHP
PHP实现支持GET,POST,Multipart/form-data的HTTP请求类
Sep 24 PHP
PHP中使用imagick实现把PDF转成图片
Jan 26 PHP
php实现多维数组中每个单元值(数字)翻倍的方法
Feb 16 PHP
php实现TCP端口检测的方法
Apr 01 PHP
php用正则判断是否为数字的方法
Mar 25 PHP
PHP模板引擎Smarty内建函数详解
Apr 11 PHP
php解压缩zip和rar压缩包文件的方法
Jul 10 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
很温暖很温暖的Lester Young
2021/03/03 冲泡冲煮
thinkPHP删除前弹出确认框的简单实现方法
2016/05/16 PHP
php将print_r处理后的数据还原为原始数组的解决方法
2016/11/02 PHP
PHP操作路由器实现方法示例
2019/04/27 PHP
PHP 范围解析操作符(::)用法分析【访问静态成员和类常量】
2020/04/14 PHP
JavaScript是否可实现多线程  深入理解JavaScript定时机制
2009/12/22 Javascript
javascript显示用户停留时间的简单实例
2013/08/05 Javascript
解决js页面滚动效果scrollTop在FireFox与Chrome浏览器间的兼容问题的方法
2015/12/03 Javascript
js确认框confirm()用法实例详解
2016/01/07 Javascript
Javascript基础_标记文字的实现方法
2016/06/14 Javascript
使用bootstrap typeahead插件实现输入框自动补全之问题及解决办法
2016/07/07 Javascript
AngularJS中update两次出现$promise属性无法识别的解决方法
2017/01/05 Javascript
Bootstrap3.3.7导航栏下拉菜单鼠标滑过展开效果
2017/10/31 Javascript
解决iview打包时UglifyJs报错的问题
2018/03/07 Javascript
vue 之 css module的使用方法
2018/12/04 Javascript
JS中注入eval, Function等系统函数截获动态代码
2019/04/03 Javascript
vue项目中引入vue-datepicker插件的详解
2019/05/14 Javascript
JavaScript/TypeScript 实现并发请求控制的示例代码
2021/01/18 Javascript
django开发教程之利用缓存文件进行页面缓存的方法
2017/11/10 Python
python感知机实现代码
2019/01/18 Python
使用Python轻松完成垃圾分类(基于图像识别)
2019/07/09 Python
Django ForeignKey与数据库的FOREIGN KEY约束详解
2020/05/20 Python
numpy的Fancy Indexing和array比较详解
2020/06/11 Python
浅谈Python 命令行参数argparse写入图片路径操作
2020/07/12 Python
python使用re模块爬取豆瓣Top250电影
2020/10/20 Python
Python爬取梨视频的示例
2021/01/29 Python
Python Spyder 调出缩进对齐线的操作
2021/02/26 Python
介绍一下Java中的static关键字
2012/05/12 面试题
研发工程师的岗位职责
2013/11/18 职场文书
机械设计毕业生自荐信
2014/02/02 职场文书
团购业务员岗位职责
2014/03/15 职场文书
学校领导班子成员查摆问题及整改措施
2014/10/28 职场文书
捐款感谢信
2015/01/20 职场文书
为什么RedisCluster设计成16384个槽
2021/09/25 Redis
Netty分布式客户端处理接入事件handle源码解析
2022/03/25 Java/Android
python标准库ElementTree处理xml
2022/05/20 Python