zoukankan      html  css  js  c++  java
  • Yii2.0 多条件搜索 带分页

                                   方法一

      在控制器中

    public function actionShow(){
    $where['title']=Yii::$app->request->get('title');
      $where['content']=Yii::$app->request->get('content');
      $query=new Query();
      $query->from('votes');
      // votes 是表名
      if(!empty($where['title'])||!empty($where['content'])){
    $query->andFilterWhere(
    ['like','title',$where['title']]
    )->orFilterWhere(
    ['like','content',$where['content']]
    );
      }
    $users=$query->from('votes')->all();
      $pages = new Pagination(['totalCount' =>$query->count(),'pageSize'=>'2']);
      $users = $query->offset($pages->offset)->limit($pages->limit)->all();
      return
    $this->render('show',['data'=>$users,'where'=>$where,'pages'=>$pages]);

    }

    在V层

    <?php
    use yiihelpersHtml;
    use yiiwidgetsActiveForm;
    use yiihelpersUrl;
    use yiiwidgetsLinkPager;
    ?>


    <?php
    $form=ActiveForm::begin([
    'action'=>Url::toRoute(['show']),
    'method'=>'get',
    ])
    ;
    echo '姓名',"&nbsp",Html::input('text','title');
    echo '简介',"&nbsp",Html::input('text','content');
    echo Html::submitButton('提交');
    ActiveForm::end();
    echo "<br/>";
    echo "<br/>";
    ?>

    显示在v层的分页

    <?php
    echo LinkPager::widget([
    'pagination'=>$pages,
    'nextPageLabel'=>'下一页',
    'firstPageLabel'=>'首页'
    ])
    ?>


                方法二(不带分页 是另外一种方法)

    public function actionShow(){
      $titles=Yii::$app->request->post('title');
      $content=Yii::$app->request->post('content');
      $where=1;
      if($titles!=""){
        $where.=" and title like '%$titles%'";
      }
      if($content!=""){
        $where.=" and content like '%$content%'";
      }
      $sql="select * from votes where $where";
      $users=Yii::$app->db->createCommand($sql)->query();
      return $this->render('show',['data'=>$users]);
    }

              作者:Hong —— Eternity

              出处:http://www.cnblogs.com/Pxhphp/

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    纪念Google Reader—Google Reader的最后一天
    SlickEdit 18.0 版本发布 同时更新破解文件
    Linux设置中文的man手册
    Android按钮单击事件的五种实现方式
    使用VBS脚本语音朗读文字
    JavaGUI设置windows主题外观
    EL表达式
    自己封装的一个Ajax小框架
    微信公众号清除内存缓存
    墨刀编辑微信端 原型设计
  • 原文地址:https://www.cnblogs.com/Pxhphp/p/6229459.html
Copyright © 2011-2022 走看看