TP 3.2 프레임 페이지 관련 실현 방법 분석
이 컨트롤 러 를 페이지 별로 계승 해 야 합 니 다.
<?php
namespace Home\Controller;
use Think\Controller;
class BaseController extends Controller {
/**
* ,
* @param $count
* @param int $pagesize
* @return \Think\Page
*/
function getpage($count, $pagesize = 20,$waps) {
$Page = new \Think\Page($count,$pagesize,$waps);
$Page->rollPage = 5;
$Page->setConfig('header', '<li class="rows"> <b>%NOW_PAGE%</b> / <b>%TOTAL_PAGE%</b> </li>');
$Page->setConfig('prev', ' ');
$Page->setConfig('next', ' ');
$Page->setConfig('last', ' ');
$Page->setConfig('first', ' ');
$Page->setConfig('theme', '%FIRST%%UP_PAGE%%LINK_PAGE%%DOWN_PAGE%%END%%HEADER%');
$Page->lastSuffix = false;//
return $Page;
}
/**
* @param $model
* @param $map where
* @param $find 0 select 1=find 2=
* @return $list
*/
function _select($model,$map,$order='',$field="",$find="0",$limit=20,$join,$param){
$waps = $param;
if(empty($model) && empty($map)){
$this->list = array();
}else{
if($find == 0){
$count = $model->where($map)->count();
$Page = $this->getpage($count,$limit,$waps);
if($Page->firstRow < 0){
$Page->firstRow = 0;
}
if($order != ""){
$this->list = $model->field($field)->where($map)->order($order)->limit($Page->firstRow. ',' . $Page->listRows)->select();
}else{
$this->list = $model->field($field)->where($map)->limit($Page->firstRow. ',' . $Page->listRows)->select();
}
$this->page = $Page->show();
}else if($find == 1){
$this->list = $model->field($field)->where($map)->find();
}else if($find == 3){
$count = $model->alias("t1")->join($join)->where($map)->count();
$Page = $this->getpage($count,$limit,$waps);
if($Page->firstRow < 0){
$Page->firstRow = 0;
}
if($order != ""){
$this->list = $model->alias("t1")->join($join)->field($field)->where($map)->order($order)->limit($Page->firstRow. ',' . $Page->listRows)->select();
}else{
$this->list = $model->alias("t1")->join($join)->field($field)->where($map)->limit($Page->firstRow. ',' . $Page->listRows)->select();
}
$this->page = $Page->show();
}else if($find == 4){
if($order != ""){
$this->list = $model->alias("t1")->join($join)->field($field)->where($map)->order($order)->limit($Page->firstRow. ',' . $Page->listRows)->find();
}else{
$this->list = $model->alias("t1")->join($join)->field($field)->where($map)->limit($Page->firstRow. ',' . $Page->listRows)->find();
}
}
$this->limit = $Page->firstRow;
$this->assign("listinfo",$this->list);
$this->assign("page",$this->page);
return($this->list);
}
}
}
컨트롤 러 에서 먼저 계승 하여 사용 합 니 다.
if($this->txt_keyword){
$where['m_title'] = array('like','%'.$this->txt_keyword.'%');
}
$where['status'] = $param['status'] = 0;
$this->_select($this->information_mod,$where,'','*',0,10,'',$param);
$this->display();
템 플 릿 중
<div class="hg_page" >
{$page}
</div>
페이지 스타일
<style>
.hg_page .first, .hg_page .current, .hg_page .num, .hg_page .next, .hg_page .end, .hg_page .rows, .hg_page .prev{
float: left;
height: 37px;
padding: 0 15px;
border: 1px solid #e5e5e5;
line-height: 37px;
margin: 0 3px;
}
.hg_page{
text-align: center;
height: 37px;
margin:0 auto;
margin-top: 30px;
margin-bottom: 20px;
width: 800px;
}
</style>
thinkpHP 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.본 고 는 ThinkPHP 프레임 워 크 를 기반 으로 한 PHP 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
자바 웹 페이지 기반 sql 2005 데이터베이스sql 구문 public List findPageing(String MemberID,int maxPageSize,int startPage,int status){...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.