天天看點

TP3.2 搜尋分頁帶參數

//商品清單頁面
    public function  index(){
        $name= I('get.name') ? I('get.name') : "";//商品名稱
        $advertiser_id= I('get.advertiser_id') ? I('get.advertiser_id') : "";//廣告主id
        $start_time = I('get.start_time') ? I('get.start_time') : "";
        $end_times = I('get.end_time') ? I('get.end_time') : "";
        $end_time = $end_times." 23:59:59";
        $s1 = strtotime($start_time);//開始的時間戳
        $e1 = strtotime($end_time);//結束的時間戳
        $where = [];
        if($name)
        {
            $where['ap.name'] = array('like',"%$name%");
        }
        if($advertiser_id)
        {
            $where['ap.advertiser_id'] = $advertiser_id;
        }
        if($s1 && $e1 !==''){
            $where['ap.add_time'] = array('between',array($s1,$e1));
        }
        $p_num= 2;
        $count  =  D('ApiProduct')->counts($where);// 查詢滿足要求的總記錄數
        $Page   = new \Think\Page($count,$p_num);// 執行個體化分頁類 傳入總記錄數和每頁顯示的記錄數(25)
        $page_begin= $Page->firstRow;
        //搜尋條件
        $map['name'] = $name;
        $map['start_time'] =  $start_time;
        $map['end_time'] =  $end_times;
        $map['advertiser_id'] =  $advertiser_id;
        $Page->parameter = array_map('urldecode',$map);
        $show = $Page->show();// 分頁顯示輸出
        $list = D('ApiProduct')->allDatas($where,$page_begin,$p_num);
        $wheres=[];
        $lists = D('ApiAdvertiser')->allData($wheres);//查詢廣告主

        $this->assign("page", $show);
        $this->assign('list',$list);
        $this->assign('name',$name);
        $this->assign('options', $lists);
        $this->assign('start', $start_time);
        $this->assign('end', $end_times);
        $this->display();

    }