php+ajax实现无刷新分页的方法


Posted in PHP onNovember 04, 2014

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

这是一款基于原生态的php +js +ajax 的分页程序实例,我们详细的从数据库创建到js,php,html页面的创建来告诉你如何实现ajax分页调用数据的方法。

具体步骤如下:

一、创建数据库

SQL语句如下:

CREATE TABLE `tb_user` (

  `id` int(10) NOT NULL auto_increment,

  `username` varchar(50) NOT NULL,

  PRIMARY KEY  (`id`)

) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ;
INSERT INTO `tb_user` VALUES (1, 'aaa');

INSERT INTO `tb_user` VALUES (2, 'bbb');

INSERT INTO `tb_user` VALUES (3, 'ccc');

INSERT INTO `tb_user` VALUES (4, 'ddd');

INSERT INTO `tb_user` VALUES (5, 'eee');

INSERT INTO `tb_user` VALUES (6, 'fff');

INSERT INTO `tb_user` VALUES (7, 'ggg');

INSERT INTO `tb_user` VALUES (8, 'hhh');

INSERT INTO `tb_user` VALUES (9, '����');

二、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.getElementById(reobj).innerHTML=http_request.responseText;

     }

     else{//页面不正常

      alert("您所请求的页面不正常!");

     }

   }

  }

  function dopage(obj,url){

   document.getElementById(obj).innerHTML="正在读取数据...";

   reobj = obj;

   send_request(url);

   }

三、php调用代码如下:
<title>PHP+ajax分页演示</title>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

<script language="javascript" src="ajaxpage.js"></script>

<div id="result">

<?php

$terry=mysql_connect("localhost","root","")or die("连接数据库失败:".mysql_error());

mysql_select_db("ajaxtest",$terry);

mysql_query("set NAMES 'utf8'");

$result=mysql_query("select * from tb_user");

$total=mysql_num_rows($result) or die(mysql_error());

$page=isset($_GET['page'])?intval($_GET['page']):1;

$page_size=3;

$url='index.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='';

$pagenav.="显示第<font color='red'>".($total?($pageset+1):0)."-".min($pageset+5,$total)."</font>记录 共<b><font color='yellow'>".$total."</font></b>条记录 现在是第 <b><font color='blue'>".$page."</font></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 tb_user order by id desc limit $pageset,$page_size");

while($array=mysql_fetch_array($info)){

?>

  <tr align="center">

    <td><?php echo $array['id'];?></td>

    <td><?php echo $array['username'];?></td>

  </tr>

<?php    

}

?>

</table>

<?php

echo "<p align=center>$pagenav</p>";

?>

</div>

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

PHP 相关文章推荐
优化PHP代码的53条建议
Mar 27 PHP
php $_SERVER当前完整url的写法
Nov 12 PHP
php入门教程 精简版
Dec 13 PHP
让的PHP代码飞起来的40条小技巧(提升php效率)
Apr 12 PHP
PHP+Mysql日期时间如何转换(UNIX时间戳和格式化日期)
Jul 15 PHP
laravel 5.1下php artisan migrate的使用注意事项总结
Jun 07 PHP
safari下载文件自动加了html后缀问题
Nov 09 PHP
php实现微信公众号创建自定义菜单功能的实例代码
Jun 11 PHP
laravel 修改记住我功能的cookie保存时间的方法
Oct 14 PHP
Yii框架where查询用法实例分析
Oct 22 PHP
TP5框架实现的数据库备份功能示例
Apr 05 PHP
PHP 图片处理
Sep 16 PHP
CI框架安全类Security.php源码分析
Nov 04 #PHP
CI框架Session.php源码分析
Nov 03 #PHP
PHP has encountered a Stack overflow问题解决方法
Nov 03 #PHP
完美实现wordpress禁止文章修订和自动保存的方法
Nov 03 #PHP
php中使用Ajax时出现Error(c00ce56e)的详细解决方案
Nov 03 #PHP
PHP防止注入攻击实例分析
Nov 03 #PHP
自编函数解决pathinfo()函数处理中文问题
Nov 03 #PHP
You might like
一个域名查询的程序
2006/10/09 PHP
PHP-Fcgi下PHP的执行时间设置方法
2013/08/02 PHP
Nigma vs Alliance BO5 第三场2.14
2021/03/10 DOTA
ie 处理 gif动画 的onload 事件的一个 bug
2007/04/12 Javascript
dwr spring的集成实现代码
2009/03/22 Javascript
javascript window.opener的用法分析
2010/04/07 Javascript
javascript之Partial Application学习
2013/01/10 Javascript
JS中eval函数的使用示例
2013/07/21 Javascript
弹出窗口并且此窗口带有半透明的遮罩层效果
2014/03/13 Javascript
基于javascript的JSON格式页面展示美化方法
2014/07/02 Javascript
不用一句js代码初始化组件
2016/01/27 Javascript
Angular+Node生成随机数的方法
2017/06/16 Javascript
JavaScript+HTML5实现的日期比较功能示例
2017/07/12 Javascript
微信小程序中网络请求缓存的解决方法
2019/12/29 Javascript
js实现蒙版效果
2020/01/11 Javascript
jquery html添加元素/删除元素操作实例详解
2020/05/20 jQuery
深度解读vue-resize的具体用法
2020/07/08 Javascript
Python深入学习之内存管理
2014/08/31 Python
使用Python的urllib2模块处理url和图片的技巧两则
2016/02/18 Python
Python搭建FTP服务器的方法示例
2018/01/19 Python
python隐藏类中属性的3种实现方法
2019/12/19 Python
Python面向对象原理与基础语法详解
2020/01/02 Python
python 获取当前目录下的文件目录和文件名实例代码详解
2020/03/10 Python
Python迭代器Iterable判断方法解析
2020/03/16 Python
解决Python发送Http请求时,中文乱码的问题
2020/04/30 Python
moosejaw旗下的户外商品促销网站:Mountain Steals
2017/02/27 全球购物
Jo Malone美国官网:祖玛珑香水
2017/03/27 全球购物
大学老师推荐信
2014/02/25 职场文书
西式结婚主持词
2014/03/14 职场文书
社区道德讲堂实施方案
2014/03/21 职场文书
马智宇结婚主持词
2014/04/01 职场文书
市场营销策划方案
2014/06/11 职场文书
运动会广播稿50字
2015/08/19 职场文书
幼儿园家长心得体会
2016/01/21 职场文书
Linux中Nginx的防盗链和优化的实现代码
2021/06/20 Servers
JavaScript的function函数详细介绍
2021/11/20 Javascript