php分页实现方法

PHP实现分页功能的方法 通过分页,我们可以将大量的数据分割成多个页面展示,提高用户体验和数据展示的效果。在本文中,我将介绍如何使用PHP实现分页功能,并提供相应的源代码。最后,我们展示了一个分页导航条,其中包含上一页和下一页的链接,以及各个页面的页码。请注意,上述代码中的链接指向的是当前PHP文件,并通过GET参数传递了相应的页码信息。总结起来,通过上述的PHP代码,我们可以轻松实现分页功能,并展示相应的数据和导航条。接下来,我们可以创建一个名为"pagination.php"的PHP文件,并开始编写实现分页功能的代码。 阅读详情

实现要求:将得到的检索结果,以每页20条记录输出到客户端。(每次输出的上限为20)

实现方法:

  • 服务器端

             例:实现检索方法,方便客户端调用。  返回$result(20条记录) 

            $pagingmin = ($page_id-1) * 20;//根据客户端传回的page_id确定需要输出的记录id最小值
        
$pagingmax = $page_id * 20;//根据客户端传回的page_id确定需要输出的记录id最大值

function doOrderInfoSearch($page_id){
        
global $db;
        
$nowdate = getNowDateYYYYMMDD();

        
$SQL = "SELECT c.ORDER_ID, ".
            
"c.CREATE_DATE, ".
            
"c.ORDER_FIRST_NAME, ".
            
"c.ORDER_LAST_NAME, ".
            
"c.ORDER_ADDRESS, ".
            
"c.PAYMENT_METHOD_ID, ".
            
"SUM(a.PRODUCT_COUNT*b.PRODUCT_PRICE) AS amount, ".
            
"c.ACTUAL_SEND_DATE ".
            
"FROM order_product_tbl a, product_master b,order_master c ".
            
"WHERE TRUE ";
        
        
if($this->create_date <> "")$SQL .=  " and c.CREATE_DATE='$this->create_date'";
        
if($this->delivery_date <> "")$SQL .=  " and c.DELIVERY_DATE='$this->delivery_date'";
        
        
if($this->delivery_flag == DELIVERY_STATE_ALL)$SQL .= "";
        
if($this->delivery_flag == DELIVERY_STATE_UNDO)$SQL .= " and c.ACTUAL_SEND_DATE > $nowdate";
        
if($this->delivery_flag == DELIVERY_STATE_DOWN)$SQL .= " and c.ACTUAL_SEND_DATE < $nowdate";
        
        
if($this->order_status == ORDER_STATUS_ALL)$SQL .=  "";
        
if($this->order_status == ORDER_STATUS_COMMON)$SQL .=  " and c.ORDER_STATUS=".ORDER_STATUS_COMMON;
        
if($this->order_status == ORDER_STATUS_CANCEL)$SQL .=  " and c.ORDER_STATUS=".ORDER_STATUS_CANCEL;
        
        
if($this->payment_flag == PAYMENT_FLAG_ALL)$SQL .=  "";
        
if($this->payment_flag == PAYMENT_FLAG_COMMON)$SQL .=  " and c.PAYMENT_FLAG=".PAYMENT_FLAG_COMMON;
        
if($this->payment_flag == PAYMENT_FLAG_CANCEL)$SQL .=  " and c.PAYMENT_FLAG=".PAYMENT_FLAG_CANCEL;
        
        
$SQL.=" and a.PRODUCT_ID=b.PRODUCT_ID and a.ORDER_ID = c.ORDER_ID group by c.ORDER_ID";
        
$rs=$db->query($SQL);
        
$pagingmin = ($page_id-1) * 20;
        
$pagingmax = $page_id * 20;
        
$result = array();
        
if ((! DB::isError($rs))) {
            
$cntIndex = 0;
            
$rowIndex = 0;
            
while ($row = $rs->fetchRow()){
                
if($rowIndex >= $pagingmin && $rowIndex < $pagingmax){
                    
$row = Common_record($row);
                    
$result[$cntIndex] = $this->getRecord($row);
                    
$cntIndex++;
                }
                
$rowIndex++;
            }
            
$this->pagenum = ceil($rs->numRows()/20);//将总计页数输出到客户端为生成页码序列提供初始值
            
return $result;
            
        }
        
    }

 

  • 客户端

        1调用doOrderInfoSearch($page_id)将返回值显示到<table>中即可。

       2 生成页码序列方法:将<div id='setpage'></div>写入htm

<script type="text/javascript"> 
<!-- 
var totalpage,pagesize,cpage,count,curcount,outstr; 
//初期化pageNum 
cpage = <?=$page_id?>; 
totalpage 
= <?=$searchcase->pagenum?>; 
pagesize 
= 10; 
outstr 
= ""; 
function gotopage(target) 
{     
    cpage 
= target;    
    doSubmitWithModeAndPage(
'page.php?id=19','DO_SEARCH',cpage);

}
 
function setpage() 
{ 
    
if(totalpage<=10){ 
        
for (count=1;count<=totalpage;count++) 
        
{    if(count!=cpage) 
            
{ 
                outstr 
= outstr + "<a href='#' onclick='gotopage("+count+")'>"+count+"</a>"; 
            }
else{ 
                outstr 
= outstr + "<span class='current' >"+count+"</span>"; 
            }
 
        }
 
    }
 
    
if(totalpage>10){
        
if(parseInt((cpage-1)/10) == 0) 
        
{             
            
for (count=1;count<=10;count++) 
            
{    if(count!=cpage) 
                
{ 
                    outstr 
= outstr + "<a href='javascript:void(0)' onclick='gotopage("+count+")'>"+count+"</a>"; 
                }
else{ 
                    outstr 
= outstr + "<span class='current'>"+count+"</span>"; 
                }
 
            }
 
            outstr 
= outstr + "<a href='javascript:void(0)' onclick='gotopage("+count+")'> next </a>"; 
        }
 
        
else if(parseInt((cpage-1)/10) == parseInt(totalpage/10)) 
        
{     
            outstr 
= outstr + "<a href='javascript:void(0)' onclick='gotopage("+(parseInt((cpage-1)/10)*10)+")'>previous</a>"; 
            
for (count=parseInt(totalpage/10)*10+1;count<=totalpage;count++) 
            
{    if(count!=cpage) 
                
{ 
                    outstr 
= outstr + "<a href='javascript:void(0)' onclick='gotopage("+count+")'>"+count+"</a>"; 
                }
else{ 
                    outstr 
= outstr + "<span class='current'>"+count+"</span>"; 
                }
 
            }
 
        }
 
        
else 
        
{     
            outstr 
= outstr + "<a href='javascript:void(0)' onclick='gotopage("+(parseInt((cpage-1)/10)*10)+")'>previous</a>"; 
            
for (count=parseInt((cpage-1)/10)*10+1;count<=parseInt((cpage-1)/10)*10+10;count++) 
            
{         
                
if(count!=cpage) 
                
{ 
                    outstr 
= outstr + "<a href='javascript:void(0)' onclick='gotopage("+count+")'>"+count+"</a>"; 
                }
else{ 
                    outstr 
= outstr + "<span class='current'>"+count+"</span>"; 
                }
 
            }
 
            outstr 
= outstr + "<a href='javascript:void(0)' onclick='gotopage("+count+")'> next </a>"; 
        }
 
    }
     
    document.getElementById(
"setpage").innerHTML = "<div id='setpage'><span id='info'> Total "+totalpage+" Page | Page "+cpage+"</span>" + outstr + "</div>"; 
    outstr 
= ""; 
}
 
//--> 
</script> 
php实现的漂亮分页方法 主要介绍了php实现的漂亮分页方法,代码很简单,需要的朋友可以参考下 立即下载

相关推荐

相位相关匹配法的opencv C++实现

这一段就是PCIAM算法的核心了,计算两幅图像的峰值相关矩阵,也是完全按照matlab移植过来的,但是后面几行,是为了筛选一些不可能存在的情况,比如边缘处的完全重合,或者只有一行,或者一列重合等等情况,由于PCIAM算法在边缘处的响应值高,所以在一些场景下可能是一种干扰,所以进行了剔除,当然可以不剔除,就是对后期的峰值选取会有影响。头文件,以及各类函数,还有主函数,第一次独立的写这种分文件类型的项目,写的拉跨还请包涵,以及当然可以转成类的形式,但感觉有点小麻烦,后期再修改吧。

qq_43616651的博客 4260

php实现分页显示功能

Sql公式: select * from cz_goods_type order by type_id limit 1,2; Offset:偏移量 Pagesize:每页显示的条数 其中offset是在变化的,和当前所在页数(current)、每页显示条数有关(pagesize) Offset=(current-1) * pagesize 最终公式:select * from cz_go

dancheng1的博客 3151

Libero SoC v2021.1离线安装与IP核配置全攻略

本文详细介绍了Libero SoC v2021.1在离线环境下的完整安装与配置流程。核心内容包括如何选择正确的离线安装包、获取并配置许可证、安装与挂载MegaVault IP库,以及将ModelSim仿真器切换至免费SE模式的关键步骤。文章旨在帮助内网开发者避开常见陷阱,顺利完成FPGA开发环境的搭建。

weixin_29279101的博客 406

PHP分页方式的思想和实现

分页技术在实现一个完整的WEB站点时似乎都是必不可缺的,简单说明一下两种分页方式的实现思想: 1.简单分页 这里的简单分页是指只用数字的方式罗列出所有的页码,如“1 2 3 4 5”形式。这种分页的方式在实现上要简单的多,只要从数据库中查询出符合条件的所有记录总和数(设为$total),再根据你设定的每页最大显示量(设 为$page_size),通过cei...

weixin_34138521的博客 127

500道C++面试高频题解析(附答案、实战示例与进阶追问)

本文提供500道C++面试高频题的详细解析,涵盖基础概念到进阶应用,包括面向对象编程、内存管理、现代C++特性、并发编程等核心考点。每道题配有实战示例和进阶追问,帮助开发者突破八股文局限,掌握解决实际问题的能力,适合准备C++技术面试的工程师系统复习。

weixin_29002595的博客 310

高分影像批处理第三回——RPC文件与几何校正

前言 前面两章部分完成了图像的基本组织和大气校正,可是对于遥感影像地理相关数据,精确的地理坐标也是非常关键的。L1级数据,可惜,并没有帮我们处理地理坐标系统。无论是打开ENVI还是用gdal工具查看图像元数据,其坐标系统都是错误的或者说是未读入的。因此本章节来解决这个问题。

weixin_43762038的博客 1万+

php完美分页

1、分页类 &lt;?php class PageView{ /**页码**/ public $pageNo = 1; /**页大小**/ public $pageSize = 20; /**共多少页**/ public $pageCount = 0; /**总记录数**/ public $totalNum = ...

stelin 230

别再到处找了!2024最新银河麒麟V10全版本(飞腾/龙芯/兆芯)官方下载与安装保姆级教程

本文提供2024年银河麒麟V10操作系统全版本(飞腾/龙芯/兆芯)的官方下载与安装保姆级教程,涵盖版本选择、镜像获取、启动盘制作及安装优化等关键步骤,助您高效部署国产操作系统。

weixin_26846533的博客 481

简单的php分页实现

简单的php分页实现

Jifei5201314的博客 3281

基于Python的FAO农业数据高效爬取与分析实战:从Scrapy到异步爬虫的进阶之路

本文将详细介绍如何使用Python最新技术爬取联合国粮农组织(FAO)的农业数据,涵盖从基础爬虫到高级异步爬虫的完整实现过程。文章包含5000余字的技术解析,提供完整的代码示例,并探讨数据处理与存储的最佳实践。

2201_76125261的博客 240

MIKE 21 教程 2.9 初始条件(Initial Conditions),边界条件Boundary Conditions),解耦(Decoupling)

本节讲解初始条件与边界条件的设置。这两个模块如设置有误则极易出现模型崩溃。

Hello Word 4799

php 分页查询,php实现分页查询的方法

这篇文章主要为大家详细介绍了php分页查询的简单实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下关于php,最近学了好多,老师跟我们说,现在学的都是php的核心部分,所以我比较注意了一下,也多练习了几遍,相对来说理解起来嗨算轻松,没有刚开始学习的时候那么困难了,总结起来就是感觉,心态最重要,一开始的时候就是心态的问题,考虑到方方面面的问题,静不下心,而且已经好多年没有坐下了踏实学习了,总...

weixin_34234741的博客 1965

【WRF-Urban】增加动态空间热排放数据以替换人为热排放参数

增加动态空间热排放数据以替换人为热排放参数

WW、forever的博客 1044

php实现的漂亮分页方法,php简单分页类实现方法

本文实例讲述了php简单分页类实现方法。。具体如下:代码如下:class PageModel {/*** 获取分页数组* @param unknown $page 当前页面数* @param unknown $goodsCount 商品总数* @param unknown $pageLength 每个页面展示页面数*/public static function getPageArr($page,...

weixin_42515795的博客 182

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

php 对文章进行分页,php 长文章进行分页实现方法

这篇文章主要为大家详细介绍了php 长文章进行分页实现方法,具有一定的参考价值,可以用来参考一下。对对一篇长文章进行分页的php代码感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧!include('include/config.php');//引入配置文件/*** 对一篇长文章进行分页的php代码** @param* @arrange 五一二笔记网: 512PiC.com*实现长文章分...

weixin_29138345的博客 344

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

php简单分页,php简单实现分页查询的方法

这篇文章主要为大家详细介绍了php简单实现分页查询的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下关于php,最近学了好多,老师跟我们说,现在学的都是php的核心部分,所以我比较注意了一下,也多练习了几遍,相对来说理解起来嗨算轻松,没有刚开始学习的时候那么困难了,总结起来就是感觉,心态最重要,一开始的时候就是心态的问题,考虑到方方面面的问题,静不下心,而且已经好多年没有坐下了踏实学习了,总...

weixin_39864738的博客 169

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

php查询分页的实现,PHP实现查询分页的方法

这篇文章主要为大家详细介绍了PHP查询分页的实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下本文实例为大家分享了PHP查询分页的具体代码,后端基于thinkphp框架,供大家参考,具体内容如下前端需要dataTables插件:传送门下载地址HTML代码第一步引入插件第二步添加ID发布时间发布IP公告内容{$vo.id}{$vo.create_time}{$vo.create_ip}{$v...

weixin_35171513的博客 323

php 漂亮的页,php实现的漂亮分页方法

/*** 获取分页的HTML内容* @param integer $page 当前页* @param integer $pages 总页数* @param string $url 跳转url地址 最后的页数以 '&page=x' 追加在url后面** @return string HTML内容;*/public static function getPageHtml($page, $...

weixin_35705475的博客 119

php分页3 1,php实现分页功能的3种方法第1/3页

这篇文章主要介绍了php实现分页功能的3种方法,感兴趣的小伙伴们可以参考一下方法一:讲sql查询进行分页进行,需要调用几个函数,具体见脚本:1.pager.class.php_conn === false || !is_resource($this->_conn)) {warningLog(__METHOD__ . ': query sql with no connection', true...

weixin_29356575的博客 139

php mysqli分页,PHP使用Mysqli类库实现完美分页效果的方法_PHP

本文实例讲述了PHP使用Mysqli类库实现完美分页效果的方法。分享给大家供大家参考,具体如下:本篇文章是基于的是我的上篇文章《PHP数据库操作之基于Mysqli的数据库操作类库》而量身打造,怎么使用 M 类库中的 FetchAll 方法做出完美分页。分页在我们每个项目中都是必不可少的,而且出现的频率非常之多。这样就要求我们程序员在项目中怎样去以最快的速度、最简洁的代码去实现分页方案。分页的实现大...

weixin_36260323的博客 292

php 数组内容分页_php数组分页实现方法

本文实例讲述了php数组分页实现方法。分享给大家供大家参考,具体如下:$arr_click = array(array( 'clicks' => 3, 'clickDate' =>'2010-10-11' ),array( 'clicks' => 2, 'clickDate' =>'2010-10-10' ),array( 'clicks' => 3, 'clickD...

weixin_42202078的博客 300

php生成静态html分页实现方法

php生成静态html分页实现方法 $conn=mysql_connect(localhost,root,wy)  or  die(连接失败:.mysql_error());  //选择数据表if (mysql_select_db(mynews,$conn))  {  echo选择数据库成功!.;    }  else  {  echo数据库选择失败!.my

潇湘博客 1515

php实现发表情分页_php实现分页功能的3种方法

直接上代码,希望大家仔细阅读。方法一:讲sql查询进行分页进行,需要调用几个函数,具体见脚本:1.pager.class.phpclass pager {public $sql; //SQL查询语句public $datanum; //查询所有的数据总记录数public $page_size; //每页显示记录的条数protected $_errstr;protected $_conn;prote...

weixin_39561179的博客 122

php mysql 分页功能_PHP使用Mysqli类库实现完美分页效果的方法

本文实例讲述了PHP使用Mysqli类库实现完美分页效果的方法。分享给大家供大家参考,具体如下:本篇文章是基于的是我的上篇文章《PHP数据库操作之基于Mysqli的数据库操作类库》而量身打造,怎么使用 M 类库中的 FetchAll 方法做出完美分页。分页在我们每个项目中都是必不可少的,而且出现的频率非常之多。这样就要求我们程序员在项目中怎样去以最快的速度、最简洁的代码去实现分页方案。分页的实现大...

weixin_42181929的博客 271

php分页3 .1,php实现分页功能的3种方法第1/3页,分页3页_PHP教程

php实现分页功能的3种方法第1/3页,分页3页直接上代码,希望大家仔细阅读。方法一:讲sql查询进行分页进行,需要调用几个函数,具体见脚本:1.pager.class.php_conn === false || !is_resource($this->_conn)) {warningLog(__METHOD__ . ': query sql with no connection', tru...

weixin_39541750的博客 399
上一篇: php正则表达式实例
下一篇: session保存对象的取出问题
yehell
博客等级 码龄20年 27粉丝 74原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值