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. 细说php(六) 数组

    一.数组概述 1.1 数组是复合类型 1.2 数组中能够存储随意长度的数据, 也能够存储随意类型的数据 二.数组的类型 2.1 索引数组: 下标是顺序整数作为索引 <?php $user[0] ...

  2. spring+hibernate整合:报错org.hibernate.HibernateException: No Session found for current thread

    spring+hibernate整合:报错信息如下 org.hibernate.HibernateException: No Session found for current thread at o ...

  3. eclipse注释模板修改

    http://swiftlet.net/archives/1199 以下为模板文件 <?xml version="1.0" encoding="UTF-8" ...

  4. 高可用集群(HA)配置

    高可用集群(HA) 1. 准备工作 HA的心跳监测可以通过串口连接监测也可以通过网线监测,前者需要服务器有一个串口,后者需要有一个空闲网卡.HA架构中需要有一个共享的存储设备首先需要在两台机器上安装m ...

  5. this函数的理解

    Javascript的this用法 this是Javascript语言的一个关键字. 它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用.比如, function test(){ this. ...

  6. Linq to Entities不识别方法

    db.UserValidates.Include(a => a.User).Where(uv => u.UserValidates.Contains(uv, c)).ToList(); 执 ...

  7. 用C#代码控制水晶报表中的对象

    在C#代码中调用水晶报表的各个对象:字段对象:FieldObject obj=(FieldObject)oRpt.ReportDefinition.ReportObjects["FieldO ...

  8. OC基础 可变字典与不可变字典的使用

    OC基础 可变字典与不可变字典的使用 1.不可变字典 1.1创建不可变字典 //创建字典 //注意: //1,元素个数是偶数 //2,每两个元素是一个键值对 //3,值在前,键在后 NSDiction ...

  9. java的InputStream和InputStreamReader有什么区别??

    解释一: InputStream  此抽象类是表示字节输入流的所有类的超类 InputStreamReader 是字节流通向字符流的桥梁:它使用指定的 charset 读取字节并将其解码为字符.它使用 ...

  10. JSP 实现 之 调用java方法实现MySQL数据库备份和恢复

    package cn.qm.db; import java.io.BufferedReader; import java.io.DataInputStream; import java.io.IOEx ...