Php 未发送每页的Codeigniter值
我正在使用codeigniters分页,它似乎对我不起作用。我点击另一个索引,它会给我一个数据库错误,因为它将“&per_page=2”作为偏移量发送到查询中。我不知道为什么会这样。请帮忙 控制器:Php 未发送每页的Codeigniter值,php,codeigniter,pagination,Php,Codeigniter,Pagination,我正在使用codeigniters分页,它似乎对我不起作用。我点击另一个索引,它会给我一个数据库错误,因为它将“&per_page=2”作为偏移量发送到查询中。我不知道为什么会这样。请帮忙 控制器: public function allcars($id = 1) { $this->load->model('process'); $this->load->library("pagination"); $c
public function allcars($id = 1)
{
$this->load->model('process');
$this->load->library("pagination");
$config["total_rows"] = $this->process->record_count();
$config["per_page"] = 2;
$config['page_query_string'] = TRUE;
$config['query_string_segment'] = 'page';
if ($id == 2){
$config["base_url"] = base_url() . "main/allcars/2";
}
else{
$config["base_url"] = base_url() . "main/allcars/1";
}
$this->pagination->initialize($config);
if($this->uri->segment(3)){
$page = ($this->uri->segment(3)) ;
}
else{
$page = 0;
}
if ($id == 2){
$data["results"] = $this->process->allcars_oldest($config["per_page"], $page);
}
else{
$data["results"] = $this->process->allcars_newest($config["per_page"], $page);
}
$data["links"] = $this->pagination->create_links();
$this->load->view('allcars', $data);
}
型号:
public function record_count() {
return $this->db->count_all("cars");
}
function allcars_newest($limit, $start)
{
$query = $this->db->query('SELECT * FROM cars ORDER BY id DESC LIMIT '.$limit.' OFFSET '.$start);
if ($query->num_rows() > 0) {
foreach ($query->result() as $row) {
$data[] = $row;
}
return $data;
}
return false;
}
function allcars_oldest($limit, $start)
{
$query = $this->db->query('SELECT * FROM cars ORDER BY id ASC LIMIT '.$limit.' OFFSET '.$start);
if ($query->num_rows() > 0) {
foreach ($query->result() as $row) {
$data[] = $row;
}
return $data;
}
return false;
}
视图:
轮廓
常见问题
结果
您遇到的是哪个数据库错误?出于调试原因,您应该在调用…allcars\u newest
/之前打印$config
数组。在这些功能中,还包括echo
$limit
和$start
。我怀疑这与CodeIgniters分页有关,而是数组/变量中的一些虚假数据。您应该使用正则表达式删除“&per_page=”from&per_page=2(任意数字)。(解决方案)
<body>
<div id="menu"><a href="/"><img id="logo" src="../../assets/Picture1.png"></a>
<?php if (isset($_SESSION['email'])) { ?>
<a href="/main/logout"><button class="btn btn-1 btn-1d">Logout</button></a>
<button class="btn btn-1 btn-1d">Profile</button>
<?php }else{ ?>
<a href="/main/login"><button class="btn btn-1 btn-1d">Login/SignUp</button></a>
<?php } ?>
<button class="btn btn-1 btn-1d">FAQ</button>
<a href='/main/allcars'><button class="btn btn-1 btn-1d">All Cars</button></a>
</div>
<div id='main'>
<h1><?php echo sizeof($query); ?> Result(s) Found</h1>
<?php
foreach ($query as $item)
{ ?>
<div class='cars'>
<?php
echo '<img class="car_image" src="' . $item->image_link . '">';
?>
<div class='content'>
<?php
echo '<p class="title">' . $item->make . ' ' . $item->model . ' ' . $item->year . '</p>';
echo '<p class="price"> ₦'. $item->price.'</p>';
echo '<p class="description">' . $item->description. '</p><br>';
// echo $item->color . '<br>';
?>
</div>
</div>
<?php
}?>
<div id="pagination">
<ul class="tsc_pagination">
<!-- Show pagination links -->
</div>
</div>
<br>
<br>
<br>
</body>
</html>