ajax完美实现两个网页 分页功能的实例代码


Posted in PHP onApril 16, 2013

分页的首页

<meta http-equiv="Content-Type" content="text/html; charset=utf8" />
<h1 align="center">武侠小说分页</h>
<br/>
<script src="jquery-1.4.2.min.js"></script>
<script>
var page='';
  function init(page){
  document.getElementById("tables").innerHTML='';
   var xhr;
   if(window.XMLHttpRequest){
 xhr = new XMLHttpRequest();
}else if(window.ActiveXObject){
 xhr =new ActiveXObject("Microsoft.XMLHTTP")
}
var url="fenye.php";
 xhr.open("POST",url,true);
 xhr.onreadystatechange=callback;
 xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
 if(page){
 xhr.send("page="+page);
 }
 else {xhr.send("page=1");}
 var content;
 function callback(){
   if(xhr.readyState==4){
     if(xhr.status==200){
      var json =eval('('+xhr.responseText+')');
   //alert(xhr.responseText);
  var fenye=json.str;
 //  alert(fenye);
     document.getElementById('div').innerHTML=fenye;
  content="<th>ID</th><th>名称</th><th>作者</th><th>出版社</th><th>ISBN号</th><th>类型</th><th>价格</th>";
  for(var i=0;i<json.info.length;i++){
  content+="<tr><td>"+json.info[i].id+"</td><td>"+json.info[i].name+"</td><td>"+json.info[i].author+"</td><td>"+json.info[i].publisher+"</td><td>"+json.info[i].isbn+"</td><td>"+json.info[i].type+"</td><td>"+json.info[i].price+"</tr>";
  document.getElementById("tables").innerHTML=content;
  }
    // alert(fenye);
     }
   }
   }
 }</script>


<body onLoad="init()">
 <h3 align="center">jquery实现$.ajax的分页</h3>
<table id="tables" style=" width:500px; height:100px; text-align:center" align="center" border="5" bordercolor="#FF6600">
<th>ID</th><th>名称</th><th>作者</th><th>出版社</th><th>ISBN号</th><th>类型</th><th>价格</th>
</table>
<table align="center" style="margin-top:15px">
 <tr><td>
 <td style="colspan:3;height:20">
 <div id="div" style="position:absolute; left: 447px; top: 218px; width: 411px; height: 22px;"></div>
 </td>
</tr>
</table>
<br />
</body>

 

分页的php精华代码

<?php
    //命令模型层处理数据
  $link=mysql_connect('localhost','root','') or die("失败");
  mysql_select_db('books',$link) or die("连接数据库出错了!");
  //每页显示记录数
  $pagesize = 2;
  //求出总的记录数
  $sql = "select count(*) as total_rows from books";
  $result = mysql_query($sql);
  $total_rows = mysql_fetch_array($result);
  //求总共的页码数
  $pages = ceil($total_rows[0]/$pagesize);
  //当前第几页
  $page = $_POST['page'];
  $strtext = "当前第".$page."页"."总共".$pages."页"."共".$total_rows[0]."记录";
  //var_dump($str);
  //接下来,我要根据当前点击的页码求出对应的数据
  $offset = $pagesize*($page-1);
  $sql = "select * from books limit $offset,$pagesize";
  mysql_query("set names utf8");
        $res=mysql_query($sql);   $rows=array();
  while($row=mysql_fetch_assoc($res)){
    $rows[]=$row;
   }
  $pageInfo = $rows;
  //echo json_encode($pageInfo);
  //var_dump($pageInfo);
  //将获得数据链接,后返回
  $first=1;
  $prev=$page-1;
  $next=$page+1;
  $last=$pages;
  //命令视图层显示数据
      $first_a = "<a onclick='init(".$first.")' href='#'><img src='3.jpg' width='50px;' height='20px;'/></a>";
  if($page>1){
   $prev_a = "<a onclick='init(".$prev.")' href='#'><img src='1.jpg' width='50px;' height='20px;'/></a>";
  }
  if($page<$pages){
   $next_a = "<a onclick='init(".$next.")' href='#'><img src='2.jpg' width='50px;' height='20px;'/></a>";
  }
  $last_a = "<a onclick='init(".$last.")' href='#'><img src='4.jpg' width='50px;' height='20px;'/></a>";
  @$str = $strtext.$first_a.$prev_a.$next_a.$last_a;
  //var_dump($str);
  $info = array('str'=>$str,'info'=>$pageInfo);
  echo json_encode($info);
PHP 相关文章推荐
模仿OSO的论坛(一)
Oct 09 PHP
php 提速工具eAccelerator 配置参数详解
May 16 PHP
php简单定时执行任务的实现方法
Feb 23 PHP
php实现的IMEI限制的短信验证码发送类
May 05 PHP
PHP入门教程之面向对象的特性分析(继承,多态,接口,抽象类,抽象方法等)
Sep 11 PHP
php及codeigniter使用session-cookie的方法(详解)
Apr 06 PHP
解决安装WampServer时提示缺少msvcr110.dll文件的问题
Jul 09 PHP
php删除一个路径下的所有文件夹和文件的方法
Feb 07 PHP
laravel 5.4 + vue + vux + element的环境搭配过程介绍
Apr 26 PHP
PHP学习笔记之session
May 06 PHP
thinkPHP5.1框架使用SemanticUI实现分页功能示例
Aug 03 PHP
PHP二维数组分页2种实现方法解析
Jul 09 PHP
关于Iframe如何跨域访问Cookie和Session的解决方法
Apr 15 #PHP
关于PHP的相似度计算函数:levenshtein的使用介绍
Apr 15 #PHP
关于PHP递归算法和应用方法介绍
Apr 15 #PHP
PHP 读取Postgresql中的数组
Apr 14 #PHP
php简单开启gzip压缩方法(zlib.output_compression)
Apr 13 #PHP
做了CDN获取用户真实IP的函数代码(PHP与Asp设置方式)
Apr 13 #PHP
php检测图片木马多进制编程实践
Apr 11 #PHP
You might like
PHP输出数组中重名的元素的几种处理方法
2012/09/05 PHP
php实现的漂亮分页方法
2014/04/17 PHP
CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析
2016/05/18 PHP
详解php中空字符串和0之间的关系
2016/10/23 PHP
laravel返回统一格式错误码问题
2019/11/04 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
2020/02/16 PHP
ajax 文件上传应用简单实现
2009/03/03 Javascript
Colortip基于jquery的信息提示框插件在IE6下面的显示问题修正方法
2010/12/06 Javascript
不使用XMLHttpRequest实现异步加载 Iframe和script
2012/10/29 Javascript
JS localStorage实现本地缓存的方法
2013/06/22 Javascript
如何判断鼠标是否在DIV的区域内
2013/11/13 Javascript
jquery.cookie() 方法的使用(读取、写入、删除)
2013/12/05 Javascript
浅谈JavaScript中运算符的优先级
2015/07/07 Javascript
浅析JavaScript中浏览器的兼容问题
2016/04/19 Javascript
JS简单循环遍历json数组的方法
2016/04/22 Javascript
AngularJS 入门教程之事件处理器详解
2016/08/19 Javascript
微信小程序实现折叠面板
2018/01/31 Javascript
详解vue-cli 2.0配置文件(小结)
2019/01/14 Javascript
JS实现横向轮播图(初级版)
2020/06/24 Javascript
Vue双向绑定实现原理与方法详解
2020/05/07 Javascript
[01:32]TI珍贵瞬间系列(一)
2020/08/26 DOTA
Python判断列表是否已排序的各种方法及其性能分析
2016/06/20 Python
Python初学时购物车程序练习实例(推荐)
2017/08/08 Python
python3.4实现邮件发送功能
2018/05/28 Python
详解Python的循环结构知识点
2019/05/20 Python
python实现的爬取电影下载链接功能示例
2019/08/26 Python
Python TCPServer 多线程多客户端通信的实现
2019/12/31 Python
Python Opencv 通过轨迹(跟踪)栏实现更改整张图像的背景颜色
2020/03/09 Python
Python多线程的退出控制实现
2020/08/10 Python
使用CSS3美化HTML表单的技巧演示
2016/05/17 HTML / CSS
浅谈pc和移动端的响应式的使用
2019/01/03 HTML / CSS
html5自定义video标签的海报与播放按钮功能
2019/12/04 HTML / CSS
欧洲品牌瓷器餐具网上商店:Porzellantreff.de
2018/04/04 全球购物
电子商务专员岗位职责
2013/12/11 职场文书
特教教师先进事迹
2014/05/21 职场文书
2015年安全工作总结范文
2015/04/02 职场文书