博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Yii 分页方法总结
阅读量:2434 次
发布时间:2019-05-10

本文共 1804 字,大约阅读时间需要 6 分钟。

[html]
  1. <span style="font-family: Arial, Helvetica, sans-serif; white-space: normal; ">利用CPagination实现</span>  

在 Controller中如下代码:

[html]
  1. public function actionIndex()    
  2.     {    
  3.         $criteria = new CDbCriteria();    
  4.         $criteria->order = 'createtime desc';        
  5.         $count = Article::model()->count($criteria);    
  6.             
  7.         $pager = new CPagination($count);    
  8.         $pager->pageSize = 10;             
  9.         $pager->applyLimit($criteria);    
  10.     
  11.         $artList = Article::model()->findAll($criteria);    
  12.         $this->render('index',array('pages'=>$pager,'list'=>$artList));    
  13.     }    

在视图中代码如下:

[html]
  1. <div id="pager">    
  2.     <?php    
  3.     
  4.     $this->widget('CLinkPager',array(    
  5.         'header'=>'',    
  6.         'firstPageLabel' => '首页',    
  7.         'lastPageLabel' => '末页',    
  8.         'prevPageLabel' => '上一页',    
  9.         'nextPageLabel' => '下一页',    
  10.         'pages' => $pages,    
  11.         'maxButtonCount'=>13    
  12.         )    
  13.     );    
  14.     ?>    
  15.     </div>    

ps:一般写法:

[html]
  1. $criteria = new CDbCriteria;    
  2. $count = DnOnline::model()->count($criteria);    
  3.     
  4. $pages = new CPagination($count);                   
  5. $pages->pageSize = 5;    
  6. $pages->applylimit($criteria);    
  7.     
  8. $model = DnOnline::model()->findAll($criteria);  
[html]
  1. CDB写法:    
  2.     
  3.     $criteria = new CDbCriteria;    
  4.     $sql = "SELECT * FROM USER";    
  5.     $modelYii::app()->db->createCommand($sql)->queryAll();    
  6.     $pages = new CPagination(count($model));                   
  7.     $pages->pageSize = 4;    
  8.     $pages->applylimit($criteria);    
  9.     
  10.     $model=Yii::app()->db->createCommand($sql." LIMIT :offset,:limit");    
  11.     $model->bindValue(':offset', $pages->currentPage*$pages->pageSize);    
  12.     $model->bindValue(':limit', $pages->pageSize);    
  13.     $model=$model->queryAll();   
[html]
  1. $criteria=new CDbCriteria();    
  2.             $result = Yii::app()->db->createCommand($sql_do)->query();    
  3.            $pages=new CPagination($result->rowCount);    
  4.           $pages->pageSize=2;    
  5.             $pages->applyLimit($criteria);    
  6.           $result=Yii::app()->db->createCommand($sql_do." LIMIT 2");    
  7.            $result->bindValue(':offset', $pages->currentPage*$pages->pageSize);    
  8.          $result->bindValue(':limit', $pages->pageSize);    
  9.          $list=$result->query();   
在yii中有自带的分页方式,通过cgridview等

转载地址:http://szemb.baihongyu.com/

你可能感兴趣的文章
Windows 98 禁止注册表检查器自动运行(转)
查看>>
Windows 98 注册表大修改(转)
查看>>
Windows 98 给回收站右键菜单增加重命名命令(转)
查看>>
科学的清理 Windows 98 注册表(转)
查看>>
Windows 98 桌面主题和用户管理(转)
查看>>
Windows 98 注册表妙用(转)
查看>>
Windows 98 系统工具(转)
查看>>
自行添加欢迎对话框中的文本(转)
查看>>
Win2K Terminal Service使用经验(转)
查看>>
Windows 98 注册表应用的30个实例(转)
查看>>
Windows 98 怎样访问网上邻居以及设置共享(转)
查看>>
为 Windows 98 的注册表数据库减肥(转)
查看>>
在 Windows 98 中关闭光盘自动播放功能(转)
查看>>
Windows 98 打印任务的管理(转)
查看>>
Windows 98 网络会议NetMeeting使用大全(转)
查看>>
快速修改所有文件夹的显示属性(转)
查看>>
Windows 98 在没有注册的情况下对系统进行更新(转)
查看>>
同时最小化多个Windows窗口(转)
查看>>
将HTML文档设置为Windows桌面背景(转)
查看>>
Windows 98 注册表的应用(转)
查看>>