如何在我的searchform codeigniter中实现分页

时间:2013-04-04 13:41:11

标签: php forms codeigniter search pagination

我的codeigniter项目中有一个搜索功能。

搜索使用联接在多个表中进行搜索。 现在是我的问题:如何为该搜索表单添加分页,以便在一个页面上显示5个结果。

我的搜索功能

function searchresults()
{
    $match = $this->input->post('search');
    $data['query'] = $this->bedrijven_model->get_search($match);
    $this->load->view('views/header');
    $this->load->view('views/searchresults', $data);
    $this->load->view('views/footer');
    $data['query'] = $this->bedrijven_model->bedrijven_tags();
}

我的搜索视图

<form name="input" action="searchresults" method="post">
<input type="search" placeholder="Zoeken..." name="search">

<input type="submit" value="Zoeken">
<input type="reset" value="Reset">
</form>

<br /><br />

<form method="link" action="<?php echo base_url('home/bedrijven')?>">
<input type="submit" value="Bedrijven">

</form>

我尝试了什么:

    function searchresults()
    {
        $match = $this->input->post('search');
        $data['query'] = $this->bedrijven_model->get_search($match);
        $this->load->library('pagination');
        $config['base_url'] = base_url();
        $config['total_rows'] = 10;
        $config['per_page'] = 5;
        $this->pagination->initialize($config); 
        $this->load->view('views/header');
        $this->load->view('views/searchresults', $data);
        $this->load->view('views/footer');
        $data['query'] = $this->bedrijven_model->bedrijven_tags();
    }

在我的观看中:echo $this->pagination->create_links();

但它不起作用。

希望有人可以帮助我:)。

感谢。

2 个答案:

答案 0 :(得分:0)

首先,视图内的$this与控制器内部不同。 (与this question比较。)我会像这样传递分页:

(Controller)
...
$data['pagination'] = $this->pagination->create_links();
...
$this->load->view('views/searchresults', $data);

(View)
<?php echo $pagination; ?>

其次,请记住pagination库只是显示分页的帮助器。您必须自己调整数据库查询,例如

(Controller)
$skip_entries = $this->uri->segment(2); // or whatever segment it's for you
$this->bedrijven_model->get_search($match, $skip_entries);

(Model)
function get_search($search, $skip_entries)
{  
    ...
    $this->db->limit(5, $skip_entries);
    ...
}

答案 1 :(得分:0)

想要切换到JS分页插件这里是链接 [http://www.datatables.net/] 如果你只想在没有任何争吵的情况下显示巢数据,那么我认为这可能会有所帮助。