控制器层
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
<?PHP
namespace frontend\controllers;
header( 'content-type:text/html;charset=utf-8' );
use Yii;
use yii\base\InvalidParamException;
use yii\web\BadRequestHttpException;
use yii\web\Controller;
use yii\filters\VerbFilter;
use yii\filters\AccessControl;
use common\models\LoginForm;
use frontend\models\PasswordResetRequestForm;
use frontend\models\ResetPasswordForm;
use frontend\models\SignupForm;
use frontend\models\ContactForm;
use frontend\models\Goods; //加载jidian 表的model
use frontend\web\myclass\QRcode; //加载生成二维码类
/**
* Site controller
*/
class GoodsController extends Controller
{
public $enableCsrfValidation = false;
//商品展示列表
public function actionGoodslist()
{
//接收过来搜索的条件
$w =yii:: $app ->request->get( 'goods_name' );
//分页
$test = new Goods(); //实例化model模型
$arr = $test ->find()->where([ 'like' , 'goods_name' , "$w" ]); //加上搜索的条件where
$pages = new Pagination([
'totalCount' => $arr -> count (),
'pageSize' => 4 //每页显示条数
]);
$models = $arr ->offset( $pages ->offset)
->limit( $pages ->limit)
->all();
return $this ->render( 'goodslist' , [ //前台的页面
'data' => $models ,
'pages' => $pages ,
'where' => $w //把搜索的条件显示到前面
]);
}
}
|
视图层
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
<?php
use yii\widgets\ActiveForm;
use yii\helpers\Url;
use yii\helpers\Html;
use yii\widgets\LinkPager;
?>
<!DOCTYPE html>
<html lang= "en" >
<head>
<meta charset= "UTF-8" >
<title>商品的展示列表</title>
</head>
<body>
<?php
$form =ActiveForm::begin([
'action' =>Url::toRoute([ 'goods/goodslist' ]),
'method' => 'get' ,
]);
echo '搜索' , " " ,Html::input( 'text' , 'goods_name' , $where );
// echo '年龄'," ",Html::input('text','age',$where['age']);
echo Html::submitButton( '搜索' );
ActiveForm:: end ();
?>
<table>
<?php foreach ( $data as $key => $val ): ?>
<tr>
<td>商品名称是:<?= $val [ 'goods_name' ]?></td>
</tr>
<?php endforeach ?>
</table>
</body>
</html>
<?php
// use yii\widgets\LinkPager;
echo LinkPager::widget([
'pagination' => $pages ,
'nextPageLabel' => '下一页' ,
'prevPageLabel' => '上一页' ,
]);
?>
|
model层
1
2
3
4
5
6
|
<?php
namespace frontend\models;
use Yii;
class Goods extends \yii\db\ActiveRecord
{
}
|
以上所述是小编给大家介绍的yii框架搜索分页modle写法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:http://blog.csdn.net/czy_1214/article/details/53734870