侯体宗的博客
  • 首页
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

php+ajax实现无刷新分页

php  /  管理员 发布于 8年前   208

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

    limit  偏移量,长度;
    limit  0,7;   第一页
    limit  7,7;   第二页
    limit  14,7;  第三页
每页信息条数:7
信息总条数:select count(*) from table
信息总页数:ceil向上取整(总条数/每页条数)
1、分页类具体使用

 "个记录", "prev" => "【上一页】", "next" => "【下一页】", "first" => "【首 页】", "last" => "【尾 页】");  private $listNum = 8;  /*   * $total 当前信息总条数   * $listRows 每页显示的条数   * $pa 下面的page    http://网址/index.php?page=5   */  public function __construct($total, $listRows = 10, $pa = "") {    $this->total = $total;    $this->listRows = $listRows;    $this->uri = $this->getUri($pa);    $this->page = !empty($_GET["page"]) ? $_GET["page"] : 1;//不传入page,则默认显示首页    $this->pageNum = ceil($this->total / $this->listRows);    $this->limit = $this->setLimit();  }  //设置每页显示的条数  private function setLimit() {    return "Limit " . ($this->page - 1) * $this->listRows . ", {$this->listRows}";  }  //获得URL地址  private function getUri($pa) {    $url = $_SERVER["REQUEST_URI"] . (strpos($_SERVER["REQUEST_URI"], '?') ? '' : "?") . $pa;    $parse = parse_url($url);    if (isset($parse["query"])) {      parse_str($parse['query'], $params);      unset($params["page"]);      $url = $parse['path'] . '?' . http_build_query($params);    }    return $url;  }  //魔术方法,  public function __get($args) {    if ($args == "limit")      return $this->limit;    else      return null;  }  //页面开始的条数  private function start() {    if ($this->total == 0)      return 0;    else      return ($this->page - 1) * $this->listRows + 1;  }  //页面结束的条数  private function end() {    return min($this->page * $this->listRows, $this->total);  }  /*设置首页*/  private function first() {    $html = "";    if ($this->page == 1)      $html.=' '.$this->config["first"].' ';    else      $html.=" uri}&page=1\")'>{$this->config["first"]} ";      //$html.=" uri}&page=1'>{$this->config["first"]} ";    return $html;  }  /*设置上一页*/  private function prev() {    $html = "";    if ($this->page == 1)      $html.=' '.$this->config["prev"].' ';    else      $html.=" uri}&page=" . ($this->page - 1) . "\")'>{$this->config["prev"]} ";      //$html.=" uri}&page=".($this->page-1)."'>{$this->config["prev"]} ";    return $html;  }  //页码列表【首页】【2】【3】…………【尾页】  private function pageList() {    $linkPage = "";    $inum = floor($this->listNum / 2);    for ($i = $inum; $i >= 1; $i--) {      $page = $this->page - $i;      if ($page < 1)        continue;      $linkPage.=" uri}&page={$page}\")'>{$page} ";    }    $linkPage.=" {$this->page} ";    for ($i = 1; $i <= $inum; $i++) {      $page = $this->page + $i;      if ($page <= $this->pageNum)        $linkPage.=" uri}&page={$page}\")'>{$page} ";      else        break;    }    return $linkPage;  }  /*设置下一页*/   private function next() {    $html = "";    if ($this->page == $this->pageNum)      $html.=' '.$this->config["next"].' ';    else      $html.=" uri}&page=" . ($this->page + 1) . "\")'>{$this->config["next"]} ";      //$html.=" uri}&page=".($this->page + 1)."'>{$this->config["next"]} ";    return $html;  }  /*设置尾页*/  private function last() {    $html = "";    if ($this->page == $this->pageNum)      $html.=' '.$this->config["last"].' ';    else      $html.=" uri}&page=" . ($this->pageNum) . "\")'>{$this->config["last"]} ";      //$html.=" uri}&page=.(this->pageNum).'>{$this->config["last"]} ";    return $html;  }  /*设置页面跳转*/  private function goPage() {    return     '      ';  }  //页面列表配置选项  function fpage($display = array(0, 1, 2, 3, 4, 5, 6, 7, 8)) {    $html[0] = " 共有{$this->total}{$this->config["header"]} ";    $html[1] = " 每页显示" . ($this->end() - $this->start() + 1) . "条,本页{$this->start()}-{$this->end()}条 ";    $html[2] = " {$this->page}/{$this->pageNum}页 ";    $html[3] = $this->first();    $html[4] = $this->prev();    $html[5] = $this->pageList();    $html[6] = $this->next();    $html[7] = $this->last();    $html[8] = $this->goPage();    $fpage = '';    foreach ($display as $index) {      $fpage.=$html[$index];    }    return $fpage;  }}

2 数据显示

  table {border:1px solid black; width:700px; margin:auto; border-collapse:collapse;}  td {border:1px solid black; }eof;echo $css;echo "";//1 引入分页类include "./Pagination.php";//2. 获得信息总条数$sql = "select * from sw_goods";$qry = mysql_query($sql);$total = mysql_num_rows($qry);$per  = 7;//3. 实例化分页类对象$page_obj = new Pagination($total,$per);//4. 拼装sql语句,获得每页信息//利用page_obj实现limit的灵活设置//$page_obj -> limit;$sqla = "select * from sw_goods ".$page_obj->limit;$qrya = mysql_query($sqla);//5. 获得页面列表$pagelist = $page_obj -> fpage(array(3,4,5,6,7,8));$i=1;while($rsta = mysql_fetch_assoc($qrya)){  echo "";  echo "";  echo "";  echo "";  echo "";  echo "";  echo "";}echo "";echo "
序号名称数量价格时间
".$i++."".$rsta['goods_name']."".$rsta['goods_number']."".$rsta['goods_price']."".date("Y-m-d H:i:s",$rsta['goods_create_time'])."
".$pagelist."
";

3 ajax无刷新分页实现

open(‘get','http://网址/index.php?page=2')

      新建网页                            

ajax无刷新分页效果

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

您可能感兴趣的文章:

  • 在Thinkphp中使用ajax实现无刷新分页的方法
  • PHP+Ajax实现无刷新分页实例详解(附demo源码下载)
  • php+ajax无刷新分页实例详解
  • 详解PHP+AJAX无刷新分页实现方法
  • php+ajax实现无刷新数据分页的办法
  • php+ajax实现无刷新分页的方法
  • ajax实现无刷新分页(php)
  • php ajax无刷新分页,支持id定位
  • PHP+Ajax实现的无刷新分页功能详解【附demo源码下载】


  • 上一条:
    标准版Eclipse搭建PHP环境的详细步骤
    下一条:
    如何使用php脚本给html中引用的js和css路径打上版本号
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • 用Time Warden监控PHP中的代码处理时间(0个评论)
    • 在PHP中使用array_pop + yield实现读取超大型目录功能示例(0个评论)
    • Property Hooks RFC在PHP 8.4中越来越接近现实(0个评论)
    • 近期文章
    • 在go语言中实现字符串可逆性压缩及解压缩功能(0个评论)
    • 使用go + gin + jwt + qrcode实现网站生成登录二维码在app中扫码登录功能(0个评论)
    • 在windows10中升级go版本至1.24后LiteIDE的Ctrl+左击无法跳转问题解决方案(0个评论)
    • 智能合约Solidity学习CryptoZombie第四课:僵尸作战系统(0个评论)
    • 智能合约Solidity学习CryptoZombie第三课:组建僵尸军队(高级Solidity理论)(0个评论)
    • 智能合约Solidity学习CryptoZombie第二课:让你的僵尸猎食(0个评论)
    • 智能合约Solidity学习CryptoZombie第一课:生成一只你的僵尸(0个评论)
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-10
    • 2016-11
    • 2017-06
    • 2017-07
    • 2017-08
    • 2017-09
    • 2017-11
    • 2017-12
    • 2018-01
    • 2018-02
    • 2018-03
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2020-07
    • 2020-09
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-05
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-05
    • 2022-06
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-10
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2023-05
    • 2023-06
    • 2023-07
    • 2023-08
    • 2023-09
    • 2023-10
    • 2023-11
    • 2023-12
    • 2024-01
    • 2024-02
    • 2024-03
    • 2024-04
    • 2024-05
    • 2024-06
    • 2024-07
    • 2024-09
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客