>  기사  >  php教程  >  五 分页类

五 分页类

WBOY
WBOY원래의
2016-06-21 09:12:11915검색

分页

//
// +----------------------------------------------------------------------+
// | 分页类                                                               |
// +----------------------------------------------------------------------+
// | Copyright (c) 2001 NetFish Software                                  |
// |                                                                      |
// | Author: whxbb(whxbbh@21cn.com)                                       |
// +----------------------------------------------------------------------+
//
// $Id: pager.class.php,v 0.1 2001/8/2 13:18:13 yf Exp $
//
// 禁止直接访问该页面
if (basename($HTTP_SERVER_VARS['PHP_SELF']) == "pager.class.php") {
    header("HTTP/1.0 404 Not Found");
}
/**
* 分页类
* Purpose
* 分页
*
* @author  : whxbb(whxbb@21cn.com)
* @version : 0.1
* @date    :  2001/8/2
*/
class Pager
{
    /** 总信息数 */
    var $infoCount;
    /** 总页数 */
    var $pageCount;
    /** 每页显示条数 */
    var $items;
    /** 当前页码 */
    var $pageNo;
    /** 查询的起始位置 */
    var $startPos;
    var $nextPageNo;
    var $prevPageNo;
    
    function Pager($infoCount, $items, $pageNo)
    {
        $this->infoCount = $infoCount;
        $this->items     = $items;
        $this->pageNo    = $pageNo;
        $this->pageCount = $this->GetPageCount();
        $this->AdjustPageNo();
        $this->startPos  = $this->GetStartPos();
    }
    function AdjustPageNo()
    {
        if($this->pageNo == '' || $this->pageNo             $this->pageNo = 1;
        if ($this->pageNo > $this->pageCount)
            $this->pageNo = $this->pageCount;
    }
    /**
     * 下一页
     */
    function GoToNextPage()
    {
        $nextPageNo = $this->pageNo + 1;
        if ($nextPageNo > $this->pageCount)
        {
            $this->nextPageNo = $this->pageCount;
            return false;
        }
        $this->nextPageNo = $nextPageNo;
        return true;
    }
    /**
     * 上一页
     */
    function GotoPrevPage()
    {
        $prevPageNo = $this->pageNo - 1;
        if ($prevPageNo         {
            $this->prevPageNo = 1;
            return false;
        }
        $this->prevPageNo = $prevPageNo;
        return true;
    }
    function GetPageCount()
    {
        return ceil($this->infoCount / $this->items);
    }
    function GetStartPos()
    {
        return ($this->pageNo - 1)  * $this->items;
    }
}
?>



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.