Home  >  Article  >  Web Front-end  >  Detailed explanation of how to write search pagination jQuery in YII framework

Detailed explanation of how to write search pagination jQuery in YII framework

高洛峰
高洛峰Original
2017-01-09 11:14:231225browse

Control layer

use frontend\models\StudUser;
use yii\data\Pagination;
use yii\db\Query;
/**
 * 查询
 *
 */
public function actionSearch()
{
  //接值
  $where=Yii::$app->request->get();
  //实例化query
  $query=new Query();
  $query->from('stud_user');
  //判断
  if(isset($where['sex'])&&$where['sex']!=''){
    //判断
    if($where['sex']=='男'){
      $query->andWhere(['stud_sex'=>0]);
    }
    if($where['sex']=='女'){
      $query->andWhere(['stud_sex'=>1]);
    }
  }else{
 $where['sex']='';
}
  //年龄
  if(isset($where['age'])&&$where['age']!=''){
     $query->andWhere(['>','stud_age',$where['age']]);
  }else{
$where['age']='';
}
  //分页
  $pagination = new Pagination(['totalCount' => $query->count()]);
  //条数
  $pagination->setPageSize('3');
  //条件
  $query->offset($pagination->offset)->limit($pagination->limit);
  //执行
  $userInfo=$query->all();
  //print_r($userInfo);die;
  return $this->render('search',['userInfo'=>$userInfo,'page'=>$pagination,'where'=>$where]);
}

Model layer

<?php
namespace frontend\models;
use Yii;
use yii\db\ActiveRecord;
class StudUser extends ActiveRecord
{
  /**
   * 声明表名
   *
   */
   public static function tableName()
   {
     return &#39;{{%stud_user}}&#39;;
   }
  /**
   * 验证规则
   *
   */
  public function rules()
  {
    return [
      [&#39;stud_age&#39;,&#39;integer&#39;],
    ];
  }
}

View layer

<?php
use yii\widgets\ActiveForm;
use yii\helpers\Url;
use yii\helpers\Html;
use yii\widgets\LinkPager;
?>
<?php
$form=ActiveForm::begin([
  &#39;action&#39;=>Url::toRoute([&#39;admin/search&#39;]),
  &#39;method&#39;=>&#39;get&#39;,
]);
echo &#39;性别&#39;," ",Html::input(&#39;text&#39;,&#39;sex&#39;,$where[&#39;sex&#39;]);
echo &#39;年龄&#39;," ",Html::input(&#39;text&#39;,&#39;age&#39;,$where[&#39;age&#39;]);
echo Html::submitButton(&#39;提交&#39;);
ActiveForm::end();
?>
<table class="table">
<tr>
  <td>序号</td>
  <td>姓名</td>
  <td>年龄</td>
</tr>
  <?php foreach($userInfo as $val):?>
    <tr>
      <td><?= $val[&#39;stud_id&#39;]?></td>
      <td><?= $val[&#39;stud_name&#39;]?></td>
      <td><?= $val[&#39;stud_age&#39;]?></td>
    </tr>
  <?php endforeach;?>
</table>
<?php
echo LinkPager::widget([
  &#39;pagination&#39; => $page,
  &#39;nextPageLabel&#39;=>&#39;下一页&#39;
 ]);?>

The paging style is in

LinkPager.php

The above is a detailed explanation of how to write search pagination jQuery in the YII framework introduced by the editor. I hope it will be helpful to you. If you have any questions, please leave me a message and the editor will reply to you in time. I would also like to thank you all for your support of the PHP Chinese website!

For more detailed explanations on how to write search paging jQuery in the YII framework, please pay attention to the PHP Chinese website!


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn