[200]有谁知道在Smart下使用Zend_Paginator实现分页的方法[Zend Framework]

海诗美妆 2009-04-14 04:18:29
最好给个例子,
思路也可以。

说得好可以再加分。
...全文
290 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
kangbo818 2009-04-16
  • 打赏
  • 举报
回复
up
phnessu4 2009-04-15
  • 打赏
  • 举报
回复
ps:DB类我自己搞的..跟主题无关,不贴了..
phnessu4 2009-04-15
  • 打赏
  • 举报
回复
smarty熟悉..Zend Framework不熟悉..不知道下面这个是不是你想要的..

http://hi.baidu.com/haomao/blog/item/ef632a3401c9ef3d5bb5f5c6.html


初学,不会用框架,第三方的包都很少用,都自己写分页..帖一段..等砖拍我...

/**
* 功能:查询页数
* 参数:
* 返回:$pages (页码数组<<直接提交给smarty中section循环)
**/
function ReadPage(){
$sql = "SELECT COUNT(*) FROM `text`;";
//连数据库
$con = DB::Con();
//请求$sql,返回值是mysql_fetch_assoc处理过的
$query = DB::Select($sql);
$count = $query['COUNT(*)'] ;
//每页显示条数
$per = 20;
$p = ceil($count/$per);
for($i=0;$i<$p;$i++){
//传给smarty的section用数组
$pages[$i] = $i;
}
if($pages){
return $pages;
}else{
//默认页码为0
$pages[0] = 0;
return $pages;
}
}//end of function ReadPage

/**
* 功能:查询列表
* 参数:$page (页码)
* 返回:$query (列表数组<<直接提交给smarty中section循环) or FALSE
**/
function ReadList($page){
if(isset($page)&&$page){
//每页显示条数
$page = $page *20;
$sql = "SELECT * FROM `test` LIMIT $page , 20";
//连数据库
$con = DB::Con();
//请求$sql,返回值是mysql_fetch_assoc处理过的
$query = DB::Query($sql);
}
if($query){
return $query;
}else{
return FALSE;
}
}//end of function ReadList()
海诗美妆 2009-04-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 fxs_2008 的回复:]
Smart是什么?
[/Quote]
smarty
yyz0832 2009-04-15
  • 打赏
  • 举报
回复
来源:http://www.neatstudio.com/?action=tags&item=framework

<?php
//...前面略
$request = $this->_request ;
$currentPage = $request->getParam('page');
$result = $table->fetchAll( ... 条件 );
$resultCount = $table->getCount( ... 条件 ); //文件自己实现
$resultCountArray = range( 1, $resultCount ); //到底是从0到resultCount-1好,还是直接从1到$resultCount好,我没有仔细测试过

$paginator = Zend_Paginator::factory( $resultCountArray );
$paginator->setCurrentPage( $currentPage )
->setItemPerPage( 25 ) //这个方法可能写错了,我是凭记忆写的,请看手册
->setPageRange( 10 );
$this->view->paginator = $paginator;
?>


zf是不是很难学啊,没玩过..
fxs_2008 2009-04-15
  • 打赏
  • 举报
回复
我用过ruby-on-rails下的分页
win_Paginator 插件

用法是这样的
控制器中:
@themes = Theme.paginate :conditions=>["fid=? and attri=1 and readperm<>0",params[:id]],:order =>'lastpost DESC',:page => params[:page],:per_page => 5

获得对象



view中:
输出分页导航
<%= will_paginate @themes, :prev_label => '« 上一页', :next_label => '下一页 »' %>



下面输出记录
for aa in @themes
xxxxxxx
end

框架都差不多,看看参不能参考


lonelyriver 2009-04-15
  • 打赏
  • 举报
回复
丿
热学沸腾56 2009-04-15
  • 打赏
  • 举报
回复
帮顶,接分!
应该网 2009-04-15
  • 打赏
  • 举报
回复
顶!!

没用过,有时间去学习学习。
fxs_2008 2009-04-14
  • 打赏
  • 举报
回复
Smart是什么?
fxs_2008 2009-04-14
  • 打赏
  • 举报
回复
我觉得可以smarty中直接调用PHP

4,250

社区成员

发帖
与我相关
我的任务
社区描述
国内外优秀PHP框架讨论学习
社区管理员
  • Framework
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧