我的Codeigniter项目中有一个很大的搜索模块。好吧,我只是将变量传递给像
这样的视图<a href=<?php echo site_url('controller/view/1'); ?>>View List</a>
在控制器中获取数据,如
$id=$this->uri->segment(3);
用于分页
http://wwww.site.com/controller/view/<filter id>/<page from>
这在简单查询的情况下非常有效。
现在我得到了更多过滤器,比如
那么网址应该是
http://wwww.site.com/controller/view/1/id2/id3/i4/id5
这是执行此过程的正确方法吗?如果没有,请给一点建议...... 我是codeigniter的新手
答案 0 :(得分:1)
您面临的问题我最近找到了解决方案。
当你第一次通过url发送参数时,请改用POST。 获取参数后,可以将它们传递给变量中的会话 类型。下次分页时从会话中获取类型值 将它放在您的查询中以获得所需的结果。 如果您有多个参数,则可以将它们放入会话中 在某些条件下取消它们,以便在每个查询中都不会调用它们。
答案 1 :(得分:0)
我认为这里最好的方法是在控制器中创建另一个方法,例如filtered_view,它接受filter_id和页码,并且该方法将使用提供的过滤器从数据库中获取数据,并且您将使用您的分页和往常一样。 希望这有帮助。