view层
<?php
use yii\widgets\LinkPager;use yii\widgets\ActiveForm;
use yii\helpers\Html;
use yii\helpers\Url;
$form=ActiveForm::begin([
'action'=>Url::toRoute(['admin/search']), //跳转的地址
'method'=>'get',
]);
echo '班级名称:','',Html::input('text','cla_name',$data['cla_name']);
echo '简介关键字:',Html::input('text','cla_desc',$data['cla_desc']);
echo '添加时间:',Html::input('text','cla_time',$data['cla_time']);
echo Html::submitButton('查询');
ActiveForm::end();
?>
控制器层 搜索和搜索时分页
/**
* 管理员搜索查看那些课程
* 分页显示
* 多条件搜索
*
*/
public function actionSearch(){
//接搜索传过来的值
$data=yii::$app->request->get();
//实例化查询类
$query=new \yii\db\Query();
//查询表
$query->from('classes');
//判断班级名称的值是否存在,不存在则为空
if(isset($data['cla_name'])&&$data['cla_name']!=''){
$query->andWhere(['like','cla_name',$data['cla_name']]); //是andWhere 不是addwhere 括号里是数组
}else{
$data['cla_name']='';
}
//判断班级描述是否为空,否则的话就为空
if(isset($data['cla_name'])&&$data['cla_desc']!=''){
$query->andWhere(['like','cla_desc',$data['cla_desc']]);
}else{
$data['cla_desc']='';
}
//判断添加的时间 (特殊情况,在此不在进行判断,直接赋值是空)
$data['cla_time']='';
// $cla=new Classes();
// $arr=$cla->find();
$pages= new Pagination([
'totalCount'=>$query->count(),
'pageSize' => 2 //每页显示条数
]);
$models = $query->offset($pages->offset) //查询出来的每一页的
->limit($pages->limit)
->all();
return $this->render('search', [
'models' => $models,
'pages' => $pages,
'data' =>$data, //搜索的默认值
]);
}