2011-09-28 70 views
1

我仍在使用CodeIgniter框架进行学习。今天,我发现自己面临着分页问题。CodeIgniter中url中的2个变量时出现分页错误

事实上,我可以通过一个id访问数据,这需要url中的变量和另一个分页。

这是我的控制器foo中的foos_by_day函数(这不是真名,它只是一个例子),它在特定的一天返回一个foos数组。 这些foos来自我的数据库,并通过名为model_foos的模型转到我的控制器get_foos_by_day($ day)。

function foos_by_day($day) { 
    $configpages['base_url'] = 'http://www.exemple.com/ci/index.php/foo/foos_by_days/'.$foo."/"; 
    $configpages['total_rows'] = count($this->model_foos->get_foos_by_day($foo)); 
    $configpages['per_page'] = 10; 
    $config['uri_segment'] = 4; 

    $this->pagination->initialize($configpages); 
    $data['foos'] = $this->model_foos->get_foos_by_day($jour, (int)$this->uri->segment(4), $configpages['per_page']); 

    $this->load->view('foo_view.php', $data); 
} 

这是我的看法:

<?php foreach ($foos as $element): ?> 
    <div> 
    Name of the foo : <?=$element->name?><br /> 
    Date of the foo : <?=$element->date?><br /> 
    </div> 
<?php endforeach; ?> 
<?php echo $this->pagination->create_links(); ?> 

我得到一些奇怪的事情在我看来,当我输入:http://www.example.com/ci/index.php/foo/foos_by_day/2011-09-28/

我32个FOOS的编号开始于(最后一页) 。它每页正确显示10个foos,但是当我点击另一个页面时,所选页面保持第四个。 此外,页码后面的链接给了我下面的语句:

<a href="http://www.example.com/ci/index.php/foo/foos_by_day/2011-09-28/">First</a> 
<a href="http://www.example.com/ci/index.php/foo/foos_by_day/2011-09-28/20">&lt;</a> 
<a href="http://www.example.com/ci/index.php/foo/foos_by_day/2011-09-28/10">2</a> 
<a href="http://www.example.com/ci/index.php/foo/foos_by_day/2011-09-28/20">3</a> 
<strong>4</strong> 

所以说:没事,然后20,10和20(再次)。简而言之,分页中存在一个错误。

你有没有遇到过这种情况(带有分页错误)?如果是这样,你是如何解决它的? 您认为我应该如何继续寻找定期分页?

在此先感谢。

P.S. :我没有删除index.php文件,但我已经学会了在其他CodeIgniter上做。

回答

1

变化 $config['uri_segment'] = 4;$configpages['uri_segment'] = 4;

+0

哇!你是对的!我怎么错过这样的事情?!非常感谢! 现在它工作:) – Dacobah

相关问题