2014-11-06 136 views
0

我一直在尝试学习使用CI框架,我也是PHP的初学者。有人可以告诉我我在这里做错了什么。网页上的内容似乎不同,但没有显示页面号。正常。当我在其他页面时,页码仍然显示为与最初页面相同。它不会改变。这是我的分页代码。任何帮助将不胜感激。Codeigniter分页不能正常工作

$this->load->library('pagination'); 
    $config = array(); 
    $config['base_url'] = site_url("infos/display/$query_id/$sort_by/$sort_order"); 
    $config['total_rows'] = $data['num_results']; 
    $config['per_page'] = $limit; 
    $config['uri_segment'] = 3; 
    $config['num_links'] = 9; 
    $this->pagination->initialize($config); 
    $data['pagination'] = $this->pagination->create_links(); 

回答

0

$config['base_url'] = base_url()."infos/display/$query_id/$sort_by/$sort_order";

  • 使用BASE_URL为您的网址配置,CI的分页需要的URL,而不在它的index.php,这site_url自动添加。

  • ,什么是对$data['num_results']你可能要检查它是否给总行

+0

感谢您的快速回复。是的$ data ['num_results']给出合适的总行数。至于配置基础网址,你的意思是我使用我的base_url相同,我已经在配置文件中设置? – loorey 2014-11-06 10:36:16

+0

@loorey不使用'site_url'使用'base_url' – tomexsans 2014-11-06 11:04:54

+0

我试过了,但是现在每个页面都显示页码1.内容在改变。我只是想让它显示正确的页码。 – loorey 2014-11-06 12:20:28

0

适当数量的尝试这个

$config['base_url'] = base_url("index.php/infos/display/$page/$query_id/$sort_by/$sort_order"); 
    $config['uri_segment'] = 3; 

您万亩$页面传递给控制器或vieuw你有分页。 我主要是做这个的控制器

function openpage() { 
$data['page'] = $this->uri->segment(3, 0); 
... 
... 
} 

确保您始终设置$页。