分配codeigniter URI问题的分页

时间:2017-05-22 14:45:23

标签: php codeigniter pagination

这是我第一次在codeigniter中处理分页,我有点困惑。我相信我的问题可能与URI段偏移量变量有关。

这是我的控制器。我已将$config["base_url"]替换为完整的URL,以便您可以查看我有多少URI段。

我的控制器

        $gutterId = $this->gutter->convertGutterNameToId($name);
        $this->load->library("pagination");
        $config = array();
        $config["base_url"] = "http://localhost/gutter/g/random/";     //base_url() . "/g/$name";
        $config["total_rows"] = $this->gutter->countThreadRows($gutterId);
        $config["per_page"] = 1;
        $config["uri_segment"] = 5;

        $this->pagination->initialize($config);

        $limit = 1;
        $offset = ($this->uri->segment(5)) ? $this->uri->segment(5) : 0;

        $data['threads'] = $this->gutter->grabThreads($limit, $offset, $gutterId);
        $data['title'] = $name;
        echo $this->pagination->create_links();

我的模特。

 public function grabThreads($limit, $offset, $gutterId){
            $query = $this->db->limit($limit, $offset)->order_by('thread_id', 'DESC')->get_where('threads', array('thread_sub_gutter' => $gutterId));

            return $query->result();
        }

所以这会在http://localhost/gutter/g/random/页面上给我一个结果,这让我相信查询工作正常。但是,当我导航到http://localhost/gutter/g/random/1时,我收到以下404错误

  

找不到您请求的页面。

1 个答案:

答案 0 :(得分:1)

您需要将请求路由到您的控制器。 应该是这样的:

$route['g/(:any)/(:any)'] = 'g/index/$1/$2';

此外,如果您的页码将在第三段中,请执行以下操作:

$config[‘uri_segment’] = 3;