类:

<?php

//分页工具类

class Page{

/*
         * 获取分页字符串
         * @param1 string $uri,分页要请求的脚本url
         * @param3 int $counts,总记录数
         * @param4 int $length,每页显示的记录数
         * @param5 int $page = 1,当前页码
         * @return string,带有a标签的,可以点击发起请求的字符串
        */
        public static function getPageStr($uri,$counts,$length,$page = 1){
            //构造一个能够点击的字符串
            //得到数据显示的字符串
            $pagecount = ceil($counts/$length);                //总页数
            $str_info = "当前一共有{$counts}条记录,每页显示{$length}条记录,一共{$pagecount}页,当前是第{$page}页";

//生成可以操作的连接:首页 上一页 下一页 末页
            //求出上一页和下一页页码
            $prev = ($page <= 1) ? 1 : $page - 1;
            $next = ($page >= $pagecount) ? $pagecount : $page + 1;
            $str_click = <<<END
                <a href="{$uri}?page=1">首页</a>
                <a href="{$uri}?page={$prev}">上一页</a>
                <a href="{$uri}?page={$next}">下一页</a>
                <a href="{$uri}?page={$pagecount}">末页</a>
END;

//按照页码分页字符串
            $str_number = '';
            for($i = 1;$i <= $pagecount;$i++){
                $str_number .= "<a href='{$uri}?page={$i}'>{$i}</a>&nbsp;";
            }

//下拉框分页字符串:利用js的onchang事件来改变当前脚本的href
            $str_select = "<select onchange=\"location.href='{$uri}?page='+this.value\">";
            //将所有的页码放入到option
            for($i = 1;$i <= $pagecount;$i++){
                if($i == $page)
                    $str_select .= "<option value='{$i}' selected='selected'>{$i}</option>";
                else
                    $str_select .= "<option value='{$i}'>{$i}</option>";
            }
            $str_select .= "</select>";
        
            //返回值
            return $str_info . $str_click . $str_number . $str_select;
        }
    }

封装page分页类的更多相关文章

  1. page分页类

    <?php /** file: Page.class.php 完美分页类 Page */ class Page { private $total; //数据表中总记录数 private $lis ...

  2. layui -page 分页类

    <?phpnamespace page; // +---------------------------------------------------------------------- / ...

  3. page分页

    首先封装一个分页类 public class Page<T> { /** * 当前页号 */ private int pageNumber; /** * 总条数 */ private in ...

  4. TP5 分页类,自定义样式

    结合X-admin 后台框架 在做项目,为了保持分页风格的一致,所以需要自定义 一个分页类. 一.在项目的 extend 目录,创建 cus 目录 二.创建 Page 分页类,代码如下 <?ph ...

  5. 自定义MVC框架之工具类-分页类的封装

    以前写过一个MVC框架,封装的有点low,经过一段时间的沉淀,打算重新改造下,之前这篇文章封装过一个验证码类. 这次重新改造MVC有几个很大的收获 >全部代码都是用Ubuntu+Vim编写,以前 ...

  6. Django分页类的封装

    Django分页类的封装 Django ORM  封装 之前有提到(Django分页的实现)会多次用到分页,将分页功能封装起来能极大提高效率. 其实不是很难,就是将之前实现的代码全都放到类中,将需要用 ...

  7. SSM框架下分页的实现(封装page.java和List<?>)

    之前写过一篇博客  java分页的实现(后台工具类和前台jsp页面),介绍了分页的原理. 今天整合了Spring和SpringMVC和MyBatis,做了增删改查和分页,之前的逻辑都写在了Servle ...

  8. mysql mybatis-generator plugin 有page实体类的分页

    page实体类 package cn.zsmy.tmp; import java.io.Serializable; /** * 分页对象. * */public final class Page im ...

  9. php四个常用类封装 :MySQL类、 分页类、缩略图类、上传类;;分页例子;

    Mysql类 <?php /** * Mysql类 */ class Mysql{ private static $link = null;//数据库连接 /** * 私有的构造方法 */ pr ...

随机推荐

  1. Qt 之 自定义窗口标题栏(非常完善)

    http://blog.csdn.net/goforwardtostep/article/details/53494800

  2. Unicode与UTF8相互转化(使用MultiByteToWideChar)

    1.简述 最近在发送网络请求时遇到了中文字符乱码的问题,在代码中调试字符正常,用抓包工具抓的包中文字符显示正常,就是发送到服务器就显示乱码了,那就要将客户端和服务器设置统一的编码(UTF-8),而我们 ...

  3. zepto源码--init--学习笔记

    先展示init函数,由于笔记本屏幕太小,删掉了部分源码注释,才能在一屏内截图. 当我们调用$()的时候,便会直接调用zepto.init()生成zepto对象,跟jquery生成jquery对象类似. ...

  4. .NET对象与Windows句柄(三):句柄泄露实例分析

    在上篇文章.NET对象与Windows句柄(二):句柄分类和.NET句柄泄露的例子中,我们有一个句柄泄露的例子.例子中多次创建和Dispose了DataReceiver和DataAnalyzer对象, ...

  5. 从高版本JDK换成低版本JDK报错Unsupported major.minor version 52.0

    ava.lang.UnsupportedClassVersionError: PR/Sort : Unsupported major.minor version 52.0这个错误是由于高版本的java ...

  6. json-lib 之jsonConfig具体应用

    一,setCycleDetectionStrategy 防止自包含 public static void testCycleObject() {         CycleObject object ...

  7. windows下安装和配置mongoDB

    上次在mac下安装和配置了mongodb,这次在windows下也尝试安装和配置mongodb. 1.首先下载mongodb压缩包,下载后解压到D盘或E盘.如下: 2.配置环境变量:桌面—计算机右键— ...

  8. Cupid's Arrow---hdu1756(判断点与多边形的位置关系 模板)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1756 题意:中文题,套模板即可: /* 射线法:判断一个点是在多边形内部,边上还是在外部,时间复杂度为 ...

  9. sqlserver 四舍五入(转)

    select   cast(round(12.5,2)   as   numeric(5,2)) 解释: round()函数,是四舍五入用,第一个参数是我们要被操作的数据,第二个参数是设置我们四舍五入 ...

  10. http和网页设计

    .基本概念: CGI(Common Gate Interface,通用网关接口) HTML均是静态网页,它无法实现一些复杂的功能,而CGI可以为我们实现. get方式提交表单: 当表单被发送到服务器断 ...