php分页的实现
php常见分页有3种,一种是文字分页,比如说上一页,下一页之类的,还有一种数字分页,像1,2,3...之类的,这个比较简单,前者稍微复杂些.最后一种是他们2者结合.
下面是代码:
1 //获取当前页数
2 if(isset($_GET['page'])){
3 $page = intval($_GET['page']);
4 }
5 else {
6 $page=1;
7 }
8 $PageSize = 1; //每页的记录数量
9 // 获取总数量
10 $sql = "select count(*) from blog";
11 $result = mysql_query($sql);
12 $row = mysql_fetch_row($result);
13 $amount = $row[0];
14 /*计算总页数
15 if($amount){
16 if($amount<$PageSize) { //如果总数量小于每页的记录数量$PageSize,那么只有一页.
17 $PageCount = 1;
18 }
19 if($amount%$PageSize) { //总数量除以每页的记录数量取于
20 $PageCount =& amp;nbsp;(int)($amount/$PageSize)+1;//如果有于,则页数等于总数量除每页的记录数加1
21 }
22 else{
23 $PageCount =& amp;nbsp;$amount/$PageSize;//没有,则结果是页数
24 }
25 }
26 else{
27 $PageCount = 0;
28 }*/
29 $PageCount = ceil($amount/$PageSize);//总页数=总数量除以每页数量 如果有小树,则进位< span style="color: #008000;">
30 if($Page>$PageCount|$page==0){// 如果当前页数大于总页数
31 echo "不能发现此页!";
32 exit();
33 }
34
35 //翻页链接
36 $PageOut = '';
37 if($page==1){//如果页数只有一页
38 $PageOut .= '第一页|上一页';
39 }
40 else{
41 $PageOut .= '<a href="index.php?page=1">第一页& lt;/a>|<a href="index.php?page='.($page-1).'">上一页</a>|';
42 }
43 if($page==$PageCount||$PageCount==0){//如果当前页等于总也数
44 $PageOut .= '下一页|尾页';
45 }
46 else{
47 $PageOut .= '<a href="index.php?page='.($page+1).'">下一 页</a>|<a href="index.php?page='.$PageCount.'">尾页</a>';
48 }
49 //获取数据
50 if($amount){
51 $sql="select * from blog limit ".($page-1)*($PageSize).",$PageSize";
52 $result=mysql_query($sql);
53 while($row=mysql_fetch_array($result)){//此段代码只是示例
54 $blogs[] = array('bid'=>$row['bid'],'title'=>$row['title']);
55 foreach ($blogs as $blog){
56 $title=$blog['title'];
57 }
58 $output = "<a href=index.php?action=blog_del&bid=$blog[bid]>删除</a>".
59 "<a href=index.php?action=blog_edit&bid=$blog[bid]>编辑</a>".
60 "<a href=index.php?action=blog_view&bid=$blog[bid]>查看</a>";
61 include("template/default/blog.tpl.php");
62 echo $PageOut;
63 }
64 for($i=1;$i<=$PageCount;$i++){//数字分页
65 $Pageshow = ($i!=$page)?"<a href='index.php?page=".$i."'>$i</a>":"<b>$i</b>";
66 echo $PageShow;
67 }
68 echo $amount.'条记录,每页'.$PageSize.'条,共'.$PageCount.'页';
69 }
php分页的实现的更多相关文章
- 记一次SQLServer的分页优化兼谈谈使用Row_Number()分页存在的问题
最近有项目反应,在服务器CPU使用较高的时候,我们的事件查询页面非常的慢,查询几条记录竟然要4分钟甚至更长,而且在翻第二页的时候也是要这么多的时间,这肯定是不能接受的,也是让现场用SQLServerP ...
- js实现前端分页页码管理
用JS实现前端分页页码管理,可以很美观的区分页码显示(这也是参考大多数网站的分页页码展示),能够有很好的用户体验,这也是有业务需要就写了一下,还是新手,经验不足,欢迎指出批评! 首先先看效果图: 这是 ...
- JdbcTemplate+PageImpl实现多表分页查询
一.基础实体 @MappedSuperclass public abstract class AbsIdEntity implements Serializable { private static ...
- MVC如何使用开源分页插件shenniu.pager.js
最近比较忙,前期忙公司手机端接口项目,各种开发+调试+发布现在几乎上线无问题了:虽然公司项目忙不过在期间抽空做了两件个人觉得有意义的事情,一者使用aspnetcore开发了个人线上项目(要说线上其实只 ...
- NET Core-TagHelper实现分页标签
这里将要和大家分享的是学习总结使用TagHelper实现分页标签,之前分享过一篇使用HtmlHelper扩展了一个分页写法地址可以点击这里http://www.cnblogs.com/wangrudo ...
- 套用JQuery EasyUI列表显示数据、分页、查询
声明,本博客从csdn搬到cnblogs博客园了,以前的csdn不再更新,朋友们可以到这儿来找我的文章,更多的文章会发表,谢谢关注! 有时候闲的无聊,看到extjs那么肥大,真想把自己的项目改了,最近 ...
- php实现的分页类
php分页类文件: <?php /** file: page.class.php 完美分页类 Page */ class Page { private $total; //数据表中总记录数 pr ...
- C#关于分页显示
---<PS:本人菜鸟,大手子还请高台贵手> 以下是我今天在做分页时所遇到的一个分页显示问题,使用拼写SQL的方式写的,同类型可参考哦~ ------------------------- ...
- JAVA 分页工具类及其使用
Pager.java package pers.kangxu.datautils.common; import java.io.Serializable; import java.util.List; ...
- 分页插件--根据Bootstrap Paginator改写的js插件
刚刚出来实习,之前实习的公司有一个分页插件,和后端的数据字典约定好了的,基本上是看不到内部是怎么实现的,新公司是做WPF的,好像对于ASP.NET的东西不多,导师扔了一个小系统给我和另一个同事,指了两 ...
随机推荐
- git 最常用命令
新建分支 git branch a #分支名称为a 切换到develop分支 git checkout a 新建分支并切换 git checkout -b a 推送到远程分支 git push ori ...
- xgboost
xgboost后面加了一个树的复杂度 对loss函数进行2阶泰勒展开,求得最小值, 参考链接:https://homes.cs.washington.edu/~tqchen/pdf/BoostedTr ...
- mysql之旅【第二篇】
创建,修改和删除表 1,创建表: create table 表名(属性名 数据类型 [完整性约束条件], 属性名 数据类型 [完整性约束条件], 属性名 数据类型 [完整性约束 ...
- Html+js 控制input输入框提示
<input type="text" class="fl plsearch_txt" id="key" value="请输入 ...
- 自定义UITabBar的两种方式
开发中,经常会遇到各种各样的奇葩设计要求,因为apple提供的UITabBar样式单一,只是简单的"图片+文字"样式,高度49又不可以改变.自定义UITabBar成为了唯一的出路. ...
- 【poj2459】 Feed Accounting
http://poj.org/problem?id=2459 (题目链接) 题意 一堆不知何时运到的草料原有F1 kg,在第D天被牛吃成F2 kg,每头牛在[l,r]吃草料,每天吃1kg.求草料是什么 ...
- poj 2528 线段树+离散化
题意:在墙上贴一堆海报(只看横坐标,可以抽象成一线段),新海报可以覆盖旧海报.求最后能看到多少张海报 sol:线段树成段更新.铺第i张海报的时候更新sg[i].x~sg[i].y这一段为i. 然而坐标 ...
- Io 异常: The Network Adapter could not establish the connection 解决方法
1.IP错误: 在设置URL时错误,例如:jdbc:oracle:thin:@192.168.1.80:1521:orcl 数据库服务器是否正确:ping 服务器IP是否通畅.ping不通则将URL更 ...
- IDLE快捷键
Ctrl + Space 完成类.方法.变量名称的自动输入,这个快捷键是我最经常使用的快捷键了,它可以完成类.方法.变量名称的自动录入,很方便.(不过在我的电脑上和输入法冲突) Ctrl + N 快 ...
- BeautifulSoup高级应用 之 CSS selectors /CSS 选择器
BeautifulSoup支持最常用的CSS selectors,这是将字符串转化为Tag对象或者BeautifulSoup自身的.select()方法. 本篇所使用的html为: html_doc ...