Php Codeigniter分页链接不工作

Php Codeigniter分页链接不工作,php,codeigniter,hyperlink,controller,pagination,Php,Codeigniter,Hyperlink,Controller,Pagination,stackoverflow上有这么多分页问题,但我不能用codeigniter看到,所以它在这里 我们需要看看这些图片 这里呢 这里呢 我在表上有10条记录,链接不起作用,这是控制器/索引 $query = $this->m_kategorimaterial->get(); $config['base_url'] = base_url().'index.php/c_kategorimaterial/index/'; $config['total_rows'

stackoverflow上有这么多分页问题,但我不能用codeigniter看到,所以它在这里

我们需要看看这些图片

这里呢

这里呢

我在表上有10条记录,链接不起作用,这是
控制器/索引

$query = $this->m_kategorimaterial->get();  
    $config['base_url'] =  base_url().'index.php/c_kategorimaterial/index/';
    $config['total_rows'] = $query->num_rows();
    $config['per_page'] = 5; 
    $this->pagination->initialize($config);
    $data['rows'] = $query->result();
    $data['title'] = 'QB Kategori Material';
    $this->load->view('menu',$data);
    $this->load->view('v/vkategorimaterial');
这是模型

 $this->db->order_by('Kode_Kategori_Material_Jasa','DESC');
    $query = $this->db->get('ms_kategori_material');
    return $query;
为什么链接不起作用?我如何解决它?谢谢stackoverflow

尝试设置

$config['uri_segment'] = 3;

这是您需要的完整信息>

在数据收集查询中,您在哪里调用偏移量?您需要为查询提供偏移量,以便它知道要获取哪些记录

您还必须将total_行更改为第二个查询,该查询将查询整个表中的total记录,因为新查询只返回足够一页的记录

型号:

$this->db->order_by('Kode_Kategori_Material_Jasa','DESC');
$query = $this->db->get('ms_kategori_material', $limit, $offset);
return $query;

function getRecordCount() {

$query=$this->db->get('ms_kategori_material');
$result = $query->num_rows();
return $result;
}
控制器:

$config['base_url'] =  base_url().'index.php/c_kategorimaterial/index/';
$config['total_rows'] = $query->num_rows();
$config['per_page'] = 5; 
$this->pagination->initialize($config);
$query = $this->m_kategorimaterial->get($config['per_page'],$this->uri->segment(3));
$data['rows'] = $this->m_kategorimaterial->getRecordCount();
$data['title'] = 'QB Kategori Material';
$this->load->view('menu',$data);
$this->load->view('v/vkategorimaterial');
似乎你可以用一个小的解释来解释这里发生了什么。要进行分页CI(或任何应用程序),至少需要3个变量

limit—每页应显示多少条记录,因此查询返回多少条记录

偏移量-查询从何处开始请求记录,使用CI这是uri段的位置,它部分受限制控制,因此,如果限制为8(每页),则每个查询将偏移量增加8。因此,第1页查询数据库中从开始的前8条记录,第2页查询从记录9开始的前8条记录,依此类推

Total records—这是整个表中查询的总匹配记录。这就是应用程序确定总共有多少页以及是否需要第二页的方式。此查询没有限制或偏移量,因为您需要所有匹配的记录,而不是部分返回

数据的实际分页由数据库查询执行。CI只是告诉数据库它需要哪些记录


希望这有助于澄清问题。

请告诉我,当你分别在第1、第2和第3页时,会生成什么URL。对不起,我不明白你的意思,所以我需要制作另一个类似的页面来显示第2、第3页列表等等。不,我的意思是,请在第一次加载页面时共享完整的URL,然后,当你点击第二个链接,依此类推。啊,等等,分页消失了!我试图让它们首先显示出来,正如Rick Calder所说,当我将模型更改为
$query=$this->db->get('ms_kategori_material',2)时,您需要将offset和limit传递给model,从给定的offset中只提取五条记录$config['per_page']=5分页未显示,因为您正在为查询设置总行数,正如我所说的,您需要第二个查询来获取总行数。尝试手动将总行数设置为10,以解释这里发生了什么,希望这能帮助您理解缺少的位。然后我将模型更改为
$query=$this->db->get('ms_kategori_material',5,0)仍然没有显示分页,我正在使用您的控制器,您能给我一个关于分页链接的示例吗?我在数据库中有十条记录,我想让它每页5条记录,所以分页将显示第一页和第二页。第一个页面将显示从
kkmj010
kkmj006
的编辑答案,第二个页面将显示从
kkmj005
kkmj001
的编辑答案,以显示记录计数,即假设您的模型名为m_kategorimaterial,它返回完整记录,另一个查询每次返回数据5,CI为您完成其余的操作。