Yii框架进行多条件查询,并分页

来源:互联网 发布:python pyqt 实例 编辑:程序博客网 时间:2024/05/20 18:51
//控制器 写法class ChaxunController extends Controller{    public function actionChaxun(){        $query= new Query();        $query->from('goods');        $where=Yii::$app->request->get()?Yii::$app->request->get():"";        if(!empty($where['gname'])){            //$query->andFilterWhere('like','gname',$where['gname']);            $query->andWhere(['like','gname',$where['gname']]);        }        if(isset($where['sort1'])&& $where['sort1']!=''){            $query->andWhere(['>=','sort',$where['sort1']]);        }        if(isset($where['sort2'])&& $where['sort2']!=''){            $query->andWhere(['<=','sort',$where['sort2']]);        }        $count = $query->count();        $pagination = new Pagination(['totalCount' => $count]);        $pagination->setPageSize(3);       $data=$query->offset($pagination->offset)->limit($pagination->limit)->all();        //print_r($data);exit;        return $this->render('show',['data'=>$data,'where'=>$where,'pagination'=>$pagination]);    }}

//视图层

<?php//use yii\bootstrap\ActiveForm;use yii\helpers\Url;use yii\helpers\Html;use yii\widgets\LinkPager;use yii\widgets\ActiveForm;?><?php    $form=ActiveForm::begin([        'action'=>Url::toRoute('chaxun'),        'method'=>'get'    ]);    echo Html::input('text','gname',$where['gname']);    echo Html::input('text','sort1',$where['sort1']);    echo '-'.Html::input('text','sort2',$where['sort2']);    echo Html::submitButton();   ActiveForm::end();?><table class="table">    <?php foreach($data as $v): ?>    <tr>        <td><?php echo $v['gid']; ?></td>        <td><?php echo $v['gname']; ?></td>        <td><?php echo $v['sort']; ?></td>    </tr>    <?php endforeach;?>    <?php    echo LinkPager::widget([        'pagination' => $pagination,    ]);    ?></table>


0 0
原创粉丝点击