Php CodeIgniter-分页赢得';行不通

Php CodeIgniter-分页赢得';行不通,php,codeigniter,pagination,Php,Codeigniter,Pagination,我现在尝试在我的web应用程序中使用分页,但它不起作用。当我单击由$this->pagination->create_links()创建的链接时,反而出现404页错误 这是我的控制器: function index($id) { $this->load->library('pagination'); if($project = $this->projects_model->get($id)) { $temp = $this->

我现在尝试在我的web应用程序中使用分页,但它不起作用。当我单击由
$this->pagination->create_links()
创建的链接时,反而出现404页错误

这是我的控制器:

function index($id) {   

    $this->load->library('pagination');

    if($project = $this->projects_model->get($id)) {
        $temp = $this->project_logs_model->get_by('project_id', $project->id);

        //$config = array();
        //$config['base_url'] = base_url().'projects/'.$project->id.'/';
        $config['base_url'] = current_url();
        $config['total_rows'] = $temp->num_rows();
        $config['uri_segment'] = 3;
        $config['per_page'] = 5; 
        $config['first_link'] = 'Latest';
        $config['last_link'] = 'Oldest';
        $config["num_links"] = 2;
        //$config['use_page_numbers'] = TRUE;
        $this->pagination->initialize($config);

        $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;

        $this->check_access($project);

        $this->data->current_project = $project;
        $this->data->updates = $this->project_logs_model->get_by('project_id', $project->id, $config['per_page'], $page);
        $this->data->links = $this->pagination->create_links();

        $this->view('project-main', $this->data);
    } else {
        show_404();
    }
}

传递到索引的
$id
用于确定要查看的项目,还用于查看该项目的项目日志,因此我确实无法删除。这意味着如果我使用分页,页码将是第二个参数。

如果您计划使用url中的页码,您应该执行以下操作:

    function index($id) {   

        $this->load->library('pagination');
         $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;
         $project = $this->projects_model->get($id);    
    if(count($project) > 0) {
            $temp = $this->project_logs_model->get_by('project_id', $project->id);

            //$config = array();
           $config['base_url'] = base_url().'projects/'.$project->id.'/'.$page;
           // $config['base_url'] = current_url();
            $config['total_rows'] = $temp->num_rows();
            $config['uri_segment'] = 3;
            $config['per_page'] = 5; 
            $config['first_link'] = 'Latest';
            $config['last_link'] = 'Oldest';
            $config["num_links"] = 2;
            //$config['use_page_numbers'] = TRUE;
            $this->pagination->initialize($config);

            $this->check_access($project);

            $this->data->current_project = $project;
            $this->data->updates = $this->project_logs_model->get_by('project_id', $project->id, $config['per_page'], $page);
            $this->data->links = $this->pagination->create_links();

            $this->view('project-main', $this->data);
        } else {
            show_404();
        }

}
但我不太确定您的逻辑,我使用另一种逻辑,我在URL中使用偏移量


尝试一下本教程,我认为这是一个很好的起点:

它仍然不起作用。顺便问一下,如何在分页时使用URL中的偏移量?@RemuDesu try