• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

一个简单的分页类

发布: 2007-7-04 12:06 | 作者: admin | 来源:  网友评论 | 查看: 11次 | 进入软件测试论坛讨论

领测软件测试网

很简单,只有一种风格,而且对输入的page变量没有判断.

pager.php

//简单的分页类
class pager{
var $pagesize = 20 ;  //页面记录条数
var $num; //这个是查询的总记录条数,一定要传递进来.
var $page=1 ;//当前页
var $pagelink; //页面链接跳转
var $url;     //当前页面地址
var $url_with_page; //这个是为首页等页面链接用的,加上了&page=或?page=
var $offset;  //查询的limit开始
function makepage() {
if ($this->num==0){
    $this->pagelink="没有找到任何记录";
    $this->offset=0;
  }else{
   //首先确定链接页地址
   $this->url=ereg_replace("(\?|&)+(page=)+([0-9])","",$_SERVER['REQUEST_URI']);
   if ($this->url==$_SERVER['PHP_SELF']) {
     $this->url_with_page=$this->url."?page=";
     }else{
     $this->url_with_page=$this->url."&page=";
     }
    $mod = $this->num % $this->pagesize;  //如果不是全部整版,那最后一页的记录数量         
    $totalpage = (int)($this->num / $this->pagesize);   //整版页的数量
    if ($mod) {
       ++$totalpage ;  //如果有余数,总页数应为整版页加1
      }


    //如果是不为整的最后一页,则该页记录数$perpage为余数,否则为10
    if ($this->page==$totalpage and $mod<>0)
      {
        $perpage=$mod;
      }
    else
      {
        $perpage=$this->pagesize;
      }
    $this->offset = ($this->page - 1) * $this->pagesize;    //本页第一条记录的下标
    //生成底面页面跳转
    $this->pagelink = '

url_with_page."">";
    if ($this->page==1) {
      $this->pagelink .= "首页 上页 ";
      }else {
      $this->pagelink .= "url_with_page"."1".">首页 url_with_page".($this->page-1).">上页 ";
      }
    if ($this->page==$totalpage)
      {
       $this->pagelink .= "下页 尾页 ";
      }
    else
      {
      $this->pagelink .= "url_with_page".($this->page+1).">下页 url_with_page".$totalpage.">尾页 ";
      }
     $this->pagelink .= "页次:".$this->page."/".$totalpage."页 共".$this->num."条记录 转到";
     $this->pagelink .= "页";
   }
}
}
?>

test.phprequire('./pager.php');
if (!isset($_GET['page'])) {
   $page=1;
   }else{
   $page=$_GET['page'];
   }
$pager=new pager;
$pager->num= 90;
$pager->page=$page;
$pager->makepage();
print "
";
echo $pager->pagelink;
echo "
offset=";
echo $pager->offset;
?>


文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际 | ISTQB | ISTQB官网 | TMMi | TMMi认证 | 国际软件测试工程师认证 | 领测软件测试网