实现分十页分向前十页向后十页的处理

<?  
/*====对数据的记录进行分页显示=====  
一张页面有连续的十个页面的连接  
一页可显示$limit_row条记录信息  
并有下十页和上十页翻页功能  
===================================

------需传入值$total_row;$limit_row;$pagename;-----  
$total_row为所选查询结果的总行数  
$limit_row为每页显示的最大行数  
$pagename为返回显示页面名称。(不带后缀名)  
----------------------------------------------------

----------------------------------------------------  
$page当前所读页面  
$total_page为共可分为几页.  
$row_begin为从第几行开始读  
$row_end为读到第几行为止  
-----------------------------------------------------*/

if (!$page){ $page=1;}  
$total_page=ceil($total_row/$limit_row);  
$row_begin=$limit_row*($page-1);  
if($page==$total_page&&($total_row%$limit_row)){  
$read_row=($total_row%$limit_row);  
}else{$read_row=$limit_row;}  
if($total_page<=10){  
$page_begin=0;  
$page_end=$total_page;  
$page10=1;  
$newpage10=1;  
}else{  
//--------------分页显示下十页----------------  
// $page10为总共有几个十页  
// $newpage10为读十页的起始位置  
// $page_endx为读取最后的页数

$page10=ceil($total_page/10);  
if($newpage10 ==""){$newpage10=1;}  
$page_begin=10*($newpage10-1);  
if($newpage10==1)  
{  
if($newpage10==($page10-1)&&($total_page%10))  
{  
$page_endx=$total_page%10;  
$page_end=10;  
echo "<FONT FACE=ARIAL SIZE=2>| 最前十页 | <A HREF=\"$pagename.php?newpage10=2&&page=11\">下 $page_endx 页</A> |</FONT>";  
}else{  
$page_end=10;  
echo "<FONT FACE=ARIAL SIZE=2>| 已是最前十页 | <A HREF=\"$pagename.php?newpage10=2&&page=11\">下十页</A> |</FONT>";  
}  
}elseif($newpage10>1){  
if($newpage10==$page10&&($total_page%10))  
{$page_end=$total_page%10;  
echo "<FONT FACE=ARIAL SIZE=2>| <A HREF=\"$pagename.php?newpage10=".($newpage10-1)."&&page=".(($newpage10-2)*10+1)."\">前十页</A> |已是最后 $page_end 页|</FONT>";  
}else{  
if($newpage10==($page10-1)&&($total_page%10))  
{ $page_endx=$total_page%10;  
$page_end=10;  
echo "<FONT FACE=ARIAL SIZE=2>|<a href=\"$pagename.php?newpage10=".($newpage10-1)."&&page=".(($newpage10-2)*10+1)."\"> 前十页</a> | <A HREF=\"$pagename.php?newpage10=".($newpage10+1)."&&page=".($newpage10*10+1)."\">下 $page_endx 页</A> |</FONT>";  
} else{  
$page_end=10;  
echo "<FONT FACE=ARIAL SIZE=2>| <A HREF=\"$pagename.php?newpage10=".($newpage10-1)."&&page=".(($newpage10-2)*10+1)."\">前十页</A> | <A HREF=\"$pagename?newpage10=".($newpage10+1)."&&page=".($newpage10*10+1)."\">下十页</A> |</FONT>";  
}  
}

}  
}

//----------------------每十页页码--------------------------------------  
echo "总共:".$total_row."条  第 ";  
for ($n=$page_begin+1;$n<=$page_begin+$page_end;$n++){  
echo "<a href=$pagename.php?newpage10=$newpage10&&page=$n >$n</a> ";  
}  
echo "页";

?>

(0)

相关推荐

  • 实现分十页分向前十页向后十页的处理

    <?  /*====对数据的记录进行分页显示=====  一张页面有连续的十个页面的连接  一页可显示$limit_row条记录信息  并有下十页和上十页翻页功能  =================================== ------需传入值$total_row;$limit_row;$pagename;-----  $total_row为所选查询结果的总行数  $limit_row为每页显示的最大行数  $pagename为返回显示页面名称.(不带后缀名)  ---------

  • Vue-CLI多页分目录打包的步骤记录

    页面目录结构 注意需要将默认的 html 模板文件 public/index.html  移动到根目录下. 安装依赖 npm i --save-dev cross-env tasksfile build/pages.js 获取 Vue CLI需要的多页对象 const path = require('path') const glob = require('glob') const fs = require('fs') const isProduction = process.env.NODE_

  • Asp.Net 网站优化系列之数据库优化 分字诀 分表(纵向拆分,横向分区)

    1. 纵向分表 纵向分表是指将一个有20列的表根据列拆分成两个表一个表10列一个表11列,这样单个表的容量就会减少很多,可以提高查询的性能,并在一定程度上减少锁行,锁表带来的性能损耗. 纵向分表的原则是什么呢,应该怎样拆分呢?答案是根据业务逻辑的需要来拆分,对于一张表如果业务上分两次访问某一张表其中一部分数据,那么就可以根据每次访问列的不同来做拆分; 另外还可以根据列更新的频率来拆分,例如某些列每天要更新3次,有些列从创建开始基本上很少更新. 举例: 假定场景,我有一张用户表,这张表包含列: I

  • Android新特性页面之ViewPager拖拽到最后一页再拖拽打开其他Activity(三种方法)

    android新特性页面,ViewPager拖拽到最后一页再拖拽打开其他Activity.实现的方式有很多,效果比较好的就是到了最后一页再拖拽出现禁止蓝色条时再跳转activity 方式一:拿到ViewPager的边界条EdgeEffectCompat,判断是否到了边界(获取EdgeEffectCompat通过反射,方法来自网络最后边会给出原文) /** * 初始化view */ private void initView(){ pager = (ViewPager) findViewById(

  • 推荐一款PHP+jQuery制作的列表分页的功能模块

    做了一个列表分页的功能模块,主要的文件包括分页类 page.class.php 和 控制 ajax 分页的ajax.js,主要功能有: 1.可以选择 3 种常见的 url 分页格式: 2.可以选择 url 分页 还是 ajax 分页: 3.两种分页方式都可以自定义分页 a 标签的文字: 4.url 分页方式可以自定义分页偏移量: 5.url 分页方式可以选择手动跳转方式:手动输入页码跳转 或 下拉菜单选择页码跳转. 列表分页功能含有但不一定全部包含的元素包括: 首页.下一页.上一页.末页.具体页

  • Cocos2d-x UI开发之场景切换代码实例

    cocos2d-x中的场景切换是通过导演类调用相应的方法完成的,可以通过CCDirector::sharedDirector()->replaceScene()方法切换场景,参数是要切换的新场景,这种方法会释放掉旧的场景.通过pushScene()切换则是将旧的场景压入到栈中,以便通过popScene()函数出栈,继续运行原场景.刚开始程序启动的时候通过runWithScene()运行一个新的场景.下面通过代码来说明.单击下图可以查看效果. 这次代码一共建立了俩个场景,一个是原来的hellowo

  • javascript的BOM汇总

    setTimeout() //延时器,只执行一次代码 clearTimeout() //清除演示器 setIntervla() //定时器,根据指定时间间隔执行一次代码 clearInterval() //清除定时器 window.history.length //访问的历史页面的数目 window.history.forward() //前一页 window.history.back(); //后一页 window.history.go(-1); //跳转至曾经访问过的某个页面,负值表示向后跳

  • 在ASP.NET 2.0中操作数据之十五:在GridView的页脚中显示统计信息

    导言 除了需要了解产品的单价.库存量和订货量,并按等级排序之外,用户可能还对统计信息感兴趣,比如说平均价格.库存总量等等.这些统计信息常常显示在报表最下面的一个统计行中.GridView控件可以含有一个页脚行,我们可以通过编程将统计数据插入到它的单元格里面去.这个任务给了我们以下3个挑战: 1.配置GridView以显示它的页脚行 2.确定统计数据.即我们应该如何计算平均价格还有库存总量? 3.将统计信息插入到页脚行的相应的单元格中 在本节教程中,我们将会看到如何去征服这些挑战.另外呢,我们将创

  • jQuery 翻页组件yunm.pager.js实现div局部刷新的思路

    前端的翻页插件有很多,bootstrap的翻页界面看起来就不错,做起来也易于上手,但应用于项目中的翻页实现还有有几个难点,分别是: 如何封装一个翻页插件,如题中的yunm.pager.js. 涉及到的div局部刷新该如何做. 在没给大家介绍正文之前,先给大家展示下效果图,如果感觉还不错,请继续往下阅读: 翻页的总体流程涉及到的知识点很多,这篇文章我们也主要来关注以上两点,其余的内容,请自悟. 一.如何定义局部刷新的div 翻页时,我们一般只会刷新页面中涉及到翻页的父级div,那么该如何定义呢?

  • Flutter实现App功能引导页

    App功能介绍页,主要是由介绍app功能的几张图片和当前页指示符组成,如下效果 我们来一步一步实现上面的界面,左右滑动切换显示功能页,这个可以通过PageView来实现,底部的指示符半透明覆盖在PageView上,开发过Android同学知道可以用Framelayout布局来实现,Flutter上也有类似的控件Stack,我们先完成骨架代码 // An highlighted block void main() => runApp(App()); class App extends Statel

随机推荐