您能告诉我如何与Zend_Paginator建立链接: http://url/controller/action?id=47&page=2。 我想添加url额外的参数来查询url,如url?id = value,而不是像这样的参数: URL /控制器/动作/ PARAM /值。你能告诉我如何将视图变量传递给页面以外的部分变量。 谢谢。
答案 0 :(得分:1)
有一个默认的视图帮助器Url,用于处理它。
您可以使用以下内容生成您的网址:
echo $this->url(array('controller' => 'controllerName',
'action' => 'actionName',
'param1' => 'param1',
'param2' => 'param2));
如果省略某些参数,帮助程序将重复使用查询网址中的参数
所以,使用Zend_Paginator你会这样:
$pages = $this->paginator->getPages();
// previous
echo $this->url(array('page' => ($pages->current -1)));
// current
echo $this->url(array('page' => ($pages->current)));
// next
echo $this->url(array('page' => ($pages->current +1)));
**编辑**
例如反映我的第一条评论
echo $this->url(array('controller' => 'controllerName', 'action' => 'actionName')) . '?user=' . $id . '&page=' . $pageNumber
答案 1 :(得分:0)
所以,如果我正确地理解了这篇文章...这是你在Paginator的一组结果中为每个后续页面加载持久化$ _GET或$ _POST值的解决方案吗?我有一个返回结果的搜索功能,但是当我尝试对结果进行分页时,后续页面加载取消设置$ _POST变量并开始返回所有结果,因为通配符搜索变为SELECT * FROM table WHERE col LIKE '%%'
。不是我想要的
编辑:我正在将关键字加载到zend_cache()并通过URI传递缓存的id(关键字的md5()值)在页面加载时调用它们。如果有人有兴趣我会发布代码