热门IT资讯网

thinkPHP分页的制作

发表于:2024-11-24 作者:热门IT资讯网编辑
编辑最后更新 2024年11月24日,public function dark_house() { if ($_POST) { } else{ $store_id = $_SESSION["ad
public function dark_house() {       if ($_POST) {       } else{           $store_id = $_SESSION["admin"]["store_id"];           // 加入搜索功能           $get = I("get.");           $member_type = $get["pub"];           $name = $get["name"];           if ($member_type) {               if ($member_type == 1) {                   $map["limit_time_end"] = array("neq", 0);               } elseif ($member_type == 2) {                   $map["limit_time_end"] = array("eq", 0);               }           }           if ($name) {               $map["truename|login_account"] = array("like", "%".$name."%");           }           $this->assign("search", $name);            $this->assign("v", $member_type);           $map["store_id"] = array("eq", $store_id);           $map["is_disabled"] = array("eq", 1);           $map["is_member"] = array("eq", 1);           $count = M("member")->where($map)->count();  // 获取总记录的条数,进行分页           $page = $this->getpage($count,20);   // 实例化分页类,传入总条数以及每页的列数           $show = $page->show();  // 分页显示输出           $list = M("member")->where($map)->field("member_id, login_account, truename, sex, limit_time_end")->limit($page->firstRow.','.$page->listRows)->select();           foreach ($list as $k => $v) {               if ($v["limit_time_end"] == 0) {                   $list[$k]["operation"] = "惩罚";                   $list[$k]["punishment"] = "punishment";                   $list[$k]["limit_time_end"] = "不惩罚";               } else {                   $list[$k]["operation"] = "解除";                   $list[$k]["punishment"] = "relieve";                   $list[$k]["limit_time_end"] = date("Y-m-d",$v["limit_time_end"]);                   $list[$k]["disabled"] = "disabled";               }               // 统计会员的旷课次数               $member_id = $list[$k]["member_id"];               $cmap["store_id"] = $store_id;               $cmap["member_id"] = $member_id;               $cmap["is_sign"] = 0;               $countC = M("reservation")->where($cmap)->count();               //echo M("reservation")->getLastSql();exit;               $list[$k]["count"] = $countC;           }           $this->assign('list',$list);// 赋值数据集           $this->assign('page',$show);// 赋值分页输出           $this->display(); // 输出模板       }    }         // 分页样式    public function getpage($count, $pagesize = 10) {        $p = new \Think\Page($count, $pagesize);        $p->setConfig('header', '
  • %TOTAL_ROW%条记录 第%NOW_PAGE%页/共%TOTAL_PAGE%
  • '); $p->setConfig('prev', '上一页'); $p->setConfig('next', '下一页'); $p->setConfig('last', '末页'); $p->setConfig('first', '首页'); $p->setConfig('theme', '%FIRST%%UP_PAGE%%LINK_PAGE%%DOWN_PAGE%%END%%HEADER%'); $p->lastSuffix = false;//最后一页不显示为总页数 return $p; }
    重点阐述;1.需要引入thinkphp的分页类 \Think\Page() 2.传入总页码,以及每页的条数。3.将page对象以及数组对象传入页面中。
                 
    {$page}
    重点阐述:1.分页的样式thinkphp已经帮你渲染好。2.所以仅仅需要重写样式即可。3.条件搜索的时候记住加上``它是为了重置页码。4.
    0