CDbCriteria这是类包使用,包是yii自带专门用来处理类似分类这种功能的。

而我们使用yii框架然后调用这种方法会起到事半功倍的效果,会发现使用这个可以节省非常多的时间。让你高速的使用PHP中分页的功能。

还要使用的一个类包就是CPagination,详细的元素属性就不解释了,能够直接连接过去看API

第一步:

在控制器里面加上一下的代码:

 $criteria = new CDbCriteria();
$criteria->alias = 'post';//要查询表的别名
$criteria->order = 'createtime desc'; // 文章显示的列表时间的长短
$criteria->condition = 'type_id=:type_id';//查询记录的条件。跟yii中find()的用法是一样的
$criteria->params = array(
':type_id' => $id
);
$criteria->distinct = '';//就是sql查询语句中的distinct的值设置,一般用的少
$criteria->group = '';//就是sql查询语句中的group的值设置,一般用的少
$criteria->select = '*';//sql查询语句中select语句值得设置,默觉得* $count = Post::model()->count($criteria);//通过设置上述的查询语句,然后查询出来符合上述条件的记录的条数
$pages = new CPagination($count);//推断上述的记录可以显示多少页
// CPagination呈现相关信息到页码。
// 当数据须要渲染到多页时,我们可能使用CPagination去呈现信息,诸如total item count, page size,current page等。这些信息被传递到pagers渲染分页button或链接。 $pages->pageSize = 1;// 每一页的记录显示多少条
$pages->applyLimit($criteria);
$post = Post::model()->findAll($criteria);

第二步:

就在views显示中加上一下的代码,就能够显示出的效果了。

	<div class="pagenav" id="pagenavi">
<span>共同拥有<?php echo $pages->itemCount; ?>页</span>
<?php
$this->widget('CLinkPager',
array(
'header' => '',
'firstPageLabel' => '首页',
'lastPageLabel' => '末页',
'prevPageLabel' => '上一页',
'nextPageLabel' => '下一页',
'pages' => $pages,
'maxButtonCount' => 8
));
? > </div>

假设是使用bootstrap框架的话,能够使用下面的代码。就会显示出bootstrap的效果。

<!-- //使用bootstrap样式分页 -->
<?php
$this->widget('CLinkPager', array(
'pages'=>$pages,
'header'=>false,
'htmlOptions'=>array('class'=>'pagination pull-right'),
'selectedPageCssClass' => 'active',
'hiddenPageCssClass' => 'disabled',
'firstPageLabel'=>'首页',
'lastPageLabel'=>'尾页',
'prevPageLabel'=>'«',
'nextPageLabel'=>'»',
'maxButtonCount'=>5,
'cssFile'=>false,
'firstPageCssClass'=>'previous',
'lastPageCssClass'=>'next',
));
?>

以下是bootstrap的效果:

版权声明:本文博主原创文章。博客,未经同意不得转载。

yii使用寻呼功能的更多相关文章

  1. YII 小模块功能

    //1,使用updateCounters()来更新计数器字段. Book::model()->updateCounters(array('download_count'=>1),':id= ...

  2. yii开启gii功能

    如果不想面对黑白界面,那么yii框架,给我们提供了一个模块gii 在配置文件中main.php 再通过访问模块的方式访问gii

  3. 一周试用yii开发一个带各种该有功能的web程序(三)

    接上篇,为什么index 模版里没有任何有关require,inculde类型关键字,却任然有我们认为“多余”的字符出现.因为在至少我的认知里html的结构该是<html><head ...

  4. Yii的学习(4)--Active Record

    摘自Yii官网:http://www.yiiframework.com/doc/guide/1.1/zh_cn/database.ar 在官网原文的基础上添加了CDbCriteria的详细用法. 虽然 ...

  5. yii快速入门与参考

    Yii 权威指南 http://www.yiichina.com/guide/ http://www.yiiframework.com/doc/guide/1.1/zh_cn/ Ⅰ.基本概念一.入口文 ...

  6. Yii PHP 框架分析(三)

    作者:wdy http://hi.baidu.com/delphiss/blog/item/357663d152c0aa85a1ec9c44.html Yii应用的入口脚本引用出了Yii类,Yii类的 ...

  7. Yii::记录日志到自定义文件

    默认情况下,Yii::log($msg, $level, $category)会把日志记录到runtime/application.log文件中 日志格式如下: [时间] - [级别] - [类别] ...

  8. Yii初学者必看(转载)

    Active Record (AR) 是一个流行的 对象-关系映射 (ORM) 技术. 每个 AR 类代表一个数据表(或视图),数据表(或视图)的列在 AR 类中体现为类的属性,一个 AR 实例则表示 ...

  9. PHP开发规范

    十.开发规范下面我们讲解 Yii 编程中推荐的开发规范.为简单起见,我们假设 WebRoot 是 Yii 应用安装的目录.1.URL默认情况下,Yii 识别如下格式的 URL: http://host ...

随机推荐

  1. Hexo博客搭建图文教程

    准备 你需要准备好以下软件: Node.js环境 Git Windows 配置Node.js环境 下载Node.js安装文件: Windows Installer 32-bit Windows Ins ...

  2. Web项目去掉Js文件红叉

    项目用到jquery,但将Jquery拷进去后,js文件有个红叉,看上去非常不爽.如下图: 解决方法: 1.找到项目下的.project文件 2.去掉Javascript验证 <?xml ver ...

  3. 纯CSS实现带小角的对话框式下拉菜单

    最近公司首页样式重写,头部下拉菜单改为了带小角的对话框式下拉菜单: 很多人可能会用图片,事实上纯CSS就能够实现: HTML: <!DOCTYPE html> <html lang= ...

  4. NAS4Free 安装配置(三)基本配置

    基本配置 在浏览器中输入地址,进入管理界面(我的是http://192.168.0.10) 登录界面 初始用户名:admin,初始密码:nas4free 首页 进入基本配置 这里可以选择语言,有中文, ...

  5. HTML布局总结

    网页的三大元素结构(内容html标签)+表现(布局CSS)+行为(js) CSS选择器1.标记选择器2.类别选择器(.red)3.ID选择器(#name)4.复合选择器(交集选择器  标记选择器+类别 ...

  6. [C入门 - 游戏编程系列] 环境篇

    这一系列笔记的代码都是在Ubuntu 14.04下编码并测试的,原因无他,因为我笔记本电脑只装了一个Ubuntu系统,其中唯一使用的第三方库SDL也是开源并且跨平台的.所以即使你用的是Windows或 ...

  7. chart画图

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  8. 栈应用之中缀表达式计算 MFC实现(计算器核心)

    大家好,我是小鸭酱,博客地址为:http://www.cnblogs.com/xiaoyajiang 支持小数.阶乘.乘方.加减乘除.括号优先级运算,美化输出结果(显示结果末尾没有多余的0) void ...

  9. js django 数据互动

    后台传输到客户端的数据怎么跟js进行互动 eval("("+{{data|safe}}+")") 获取到的数据可以直接使用 eval 有时候会存在编码问题所以推 ...

  10. 购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(1)--后端

    原文:购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(1)--后端 chsakell分享了前端使用AngularJS,后端使用ASP.NET Web API的购物车 ...