搜索后分页---已解决,可以按照15L的方法
本帖最后由 流浪的乞丐 于 2013-7-16 11:22 编辑我想知道你们搜索后分页的思路。
有没有好心人给说说自己的思路的?
本帖最后由 ppluobo 于 2013-7-8 17:53 编辑
流浪的乞丐 发表于 2013-7-8 17:45 static/image/common/back.gif
哈哈,先谢谢了。这种方法我之前用过,可行的。 如果最后实在没办法,就采取这个。
翻页后再刷新?不影响查询结果吧,这个跟性能、页面显示什么的也没什么关系。就是代码丑陋,自己偷懒,懒得搞很复杂的方法。
手册上不是有示例了么 {:soso_e127:}搜索后分页跟其他分页有差别么?
你统计一下搜索结果total,规划好每页条数,如pagesize=20,
基本上结果就可以出来了 gogogo1027 发表于 2013-7-8 16:31 static/image/common/back.gif
搜索后分页跟其他分页有差别么?
你统计一下搜索结果total,规划好每页条数,如pagesize=20,
...
分页后的链接怎么处理?
我很好奇,你们都没有遇到这种问题么?整个页面是一个列表,列表上有搜索条件,比方说,搜索名字中有字母a的,然后点搜索后,列表里显示的都是名字中包含字母a的数据。
先说说我自己测试遇到的问题。刚开始配置的$config['enable_query_strings']为false,链接都是形如:example.com/blog/index/1/的。blog是控制器,index是方法,后面的1 是一个参数,用户组的参数,这种链接是显示所有用户组id为1的用户信息。
翻页后,链接形如:example.com/blog/index/1/2
问题一:如果我想把翻页后的链接变成形如:example.com/blog/index/1/?pre_page=2 这个时候该怎么设置。我把翻页的配置$config ['page_query_string'] 设置为 TRUE;后,此时的链接变成了:example.com/blog/index/1/&pre_page=2,这个是有问题的。这个也不重要。
问题二:$config['enable_query_strings']设置为true后,链接形如:example.com?c=blog&m=index的时候,$this->uri->segment()是不是就不能用了?
问题三:比方说,我搜索用户名中包含a的用户,这些用户有很多条,当我点第二页的时候,怎么样把这个条件为a的搜索条件穿过去,用get?还是别的?如果用get,那么怎么样用get,在用get后初始化翻页类的时候,$config ['base_url']改怎么写?
我语文贼差,表达相当有问题,我发现了。
流浪的乞丐 发表于 2013-7-8 16:45 static/image/common/back.gif
分页后的链接怎么处理?
CI有一个函数直接生成链接的。只要你把参数传进去之后,会自动生成链接
详情http://codeigniter.org.cn/user_guide/libraries/pagination.html
你看看手册吧。 流浪的乞丐 发表于 2013-7-8 17:07 static/image/common/back.gif
我很好奇,你们都没有遇到这种问题么?整个页面是一个列表,列表上有搜索条件,比方说,搜索名字中有字母 ...
这个时候,你就要先自定义一个默认的url,比如$url='&page=*';然后再连接进去你查询过后的分页 本帖最后由 ppluobo 于 2013-7-8 17:49 编辑
我在项目中使用了简易的js操作,比较丑陋,供参考
1,页面中的检索表单:
<?php
$this->load->helper('form');
$attr = array('id'=>'q_form');
echo form_open('user/user_list',$attr);?>
// .... 检索条件的input内容....
<?php echo form_close(); ?>
// .... 数据显示部分
<?php echo $links; /*$links为分页类生产的链接*/?>
<script type="text/javascript">
$(function(){
$('#example_paginate a').click(function(){
$('#q_form').attr('action',$(this).attr('href')).submit();
return false;
});
});
</script>
代码比较丑陋,但实现了不修改CI类库的情况下,传递分页查询条件的问题。
PS:分页类里面确实有传递参数的例子,但是感觉不够实用,<a>链接默认使用get请求,会导致处理一些字符编码等问题,比较麻烦。而且带查询参数的分页一般会有一个用于检索的form表单,所以想到直接使用这个表单提交分页参数。
ppluobo 发表于 2013-7-8 17:42 static/image/common/back.gif
我在项目中使用了简易的js操作,比较丑陋,供参考
1,页面中的检索表单:
哈哈,先谢谢了。这种方法我之前用过,可行的。 如果最后实在没办法,就采取这个。
我们的测试很BT,翻页后太刷新下,然后.......然后老说是BUG
gogogo1027 发表于 2013-7-8 17:37 static/image/common/back.gif
这个时候,你就要先自定义一个默认的url,比如$url='&page=*';然后再连接进去你查询过后的分页 ...
能否贴一些代码,thx