在codeigniter中通过url传递变量的方法

时间:2013-03-14 05:32:21

标签: codeigniter get pagination

我的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>

这在简单查询的情况下非常有效。

现在我得到了更多过滤器,比如

  1. 国家
  2. 国家
  3. 客户类型 等等。
  4. 那么网址应该是

    http://wwww.site.com/controller/view/1/id2/id3/i4/id5
    

    这是执行此过程的正确方法吗?如果没有,请给一点建议...... 我是codeigniter的新手

2 个答案:

答案 0 :(得分:1)

您面临的问题我最近找到了解决方案。

当你第一次通过url发送参数时,请改用POST。 获取参数后,可以将它们传递给变量中的会话 类型。下次分页时从会话中获取类型值 将它放在您的查询中以获得所需的结果。 如果您有多个参数,则可以将它们放入会话中 在某些条件下取消它们,以便在每个查询中都不会调用它们。

答案 1 :(得分:0)

我认为这里最好的方法是在控制器中创建另一个方法,例如filtered_view,它接受filter_id和页码,并且该方法将使用提供的过滤器从数据库中获取数据,并且您将使用您的分页和往常一样。 希望这有帮助。

相关问题