网站建设资讯

NEWS

网站建设资讯

PHP之简单的分页类

pageClass.php

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册网站空间、营销软件、网站建设、大渡口网站维护、网站推广。

total = $total;
        $this->size = $size;
        $this->pageCount=ceil($total/$size);
        $this->currentPage=$currentPage;

        $this->pageStart = $this->currentPage-$this->showPages;
        $this->pageEnd = $this->currentPage+$this->showPages;

        //如果起始页码小于1那么就设定为1
        if($this->pageStart<=1){
            //难点

            $this->pageEnd = $this->pageEnd+(1-$this->pageStart);
            $this->pageStart=1;

        }

        //如果结束页大于总页数,重置结束页=总页数
        if($this->pageEnd>=$this->pageCount){

            //难点
            if($this->pageCount<$this->showPages*2+1){
                $this->pageStart=1;
            }else{
                $this->pageStart=$this->pageStart-($this->pageEnd-$this->pageCount);
            }

            $this->pageEnd=$this->pageCount;

        }

    }

    public function Pages(){

        $str='
'; $str.= $this->home(); $str.= $this->lastPage(); $str.= $this->numPage(); $str.= $this->nextPage(); $str.= $this->last(); $str.= $this->countTotal(); $str.='
'; return $str; } //首页 private function home(){ if($this->currentPage==1){ $str = '

首页

'; }else{ $str = '首页'; } return $str; } //上一页 private function lastPage(){ if($this->currentPage==1){ $str = '

上一页

'; }else{ $str = 'currentPage-1).'>上一页'; } return $str; } //中间的数字页 private function numPage(){ $str='

...

'; for($i=$this->pageStart;$i<=$this->pageEnd;$i++){ if($i==$this->currentPage){ $str.=''.$i.''; }else{ $str.=''.$i.''; } } $str.='

...

'; return $str; } //下一页 private function nextPage(){ if($this->currentPage==$this->pageCount){ $str = '

下一页

'; }else{ $str = 'currentPage+1).'>下一页'; } return $str; } //末页 private function last(){ if($this->currentPage==$this->pageCount){ $str = '

末页

'; }else{ $str = 'pageCount.'>末页'; } return $str; } //统计 private function countTotal(){ return '

13100条数据

'; } }

调用 page.php

getMessage();
    }

    $sql = 'select * from student';
    $stmt = $db->prepare($sql);
    $stmt->execute();
    //获取总条数
    $total = $stmt->rowCount();
    $size = 5;//每页条数      0,8;    8,8    16,8
    //如果不存在第一页,则默认第一页
    isset($_GET['page'])?$currentPage = $_GET['page']:$currentPage=1;
    $sql.=" limit ".($currentPage-1)*$size.",$size";

    $stmt = $db->prepare($sql);
    $stmt->execute();
    //查询结果集
    $res = $stmt->fetchAll(PDO::FETCH_ASSOC);

?>



    
    Document
    




';
    echo 'ID姓名Emai手机号';
    foreach($res as $k=>$v){
        echo ''.$v['id'].''.$v['name'].''.$v['email'].''.$v['mobile'].'';
    }
    echo '';

$page = new Page($total,$size,$currentPage);
echo $page->Pages();

?>



标题名称:PHP之简单的分页类
文章分享:http://cdweb.net/article/jecicg.html?page=%27.%24this-