Maison  >  Article  >  interface Web  >  Explication détaillée de la façon d'écrire la pagination de recherche jQuery dans le framework YII

Explication détaillée de la façon d'écrire la pagination de recherche jQuery dans le framework YII

高洛峰
高洛峰original
2017-01-09 11:14:231271parcourir

Couche de contrôle

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]);
}

Couche de modèle

<?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;],
    ];
  }
}

Couche d'affichage

<?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;
 ]);?>

Le style de pagination est dans

LinkPager.php

Ce qui précède est une explication détaillée de la façon d'écrire une pagination de recherche jQuery dans le framework YII introduit par l'éditeur. J'espère que cela vous sera utile. Si vous avez des questions, veuillez me laisser un message et le. l'éditeur vous répondra à temps. Je voudrais également vous remercier tous pour votre soutien au site Web PHP chinois !

Pour des explications plus détaillées sur la façon d'écrire des pages de recherche jQuery dans le framework YII, veuillez faire attention au site Web PHP chinois !


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn