【问题标题】:Error in pagination of codeigniter 1codeigniter 1的分页错误
【发布时间】:2015-05-27 17:55:37
【问题描述】:

在模型/rci_model.php 中

public function record_count() {
return $this->db->count_all("produk");
}

public function fetch_countries($limit, $start) {
    $this->db->limit($limit, $start);
     $query=$this->db->query("SELECT * FROM produk WHERE id_kategori='Men' order by nama_produk ASC");
        return $query->result();

    if ($query->num_rows() > 0) {
        foreach ($query->result() as $row) {
            $data[] = $row;
        }
        return $data;
    }
    return false;
}

在控制器/sandal_clarudo.php 中

function sandals_for_men(){
$data['seo'] = $this->rci_model->tampil_meta(22);
$this->load->view('head', $data);
$config = array();
$config["base_url"] = "http://localhost/clarudo/index.php/sandal_clarudo/sandals_for_men/";
$config["total_rows"] = $this->rci_model->record_count();
$config["per_page"] = 5;
$config["uri_segment"] = 3;

$this->pagination->initialize($config);

$page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;
$data["results"] = $this->rci_model->
    fetch_countries($config["per_page"], $page);
$data["links"] = $this->pagination->create_links();
$this->load->view('men', $data);
$this->load->view('footer');
}

在视图/men.php

<?php
foreach($results as $t){
echo "$t->nama_produk";
}

我只想显示类别 = 'Men' 的产品,但使用我的代码会显示所有类别的产品。想法?

【问题讨论】:

  • 更正这一行 fetch_countries($config["per_page"], $page);到 $this->rci_model->fetch_countries($config["per_page"], $page);在你的控制器文件中
  • 仍然显示所有产品,所有产品总数为38,但我只想显示category="Men"的特定产品,男士类别产品总数为11,所以结论是..我想展示 11 个产品而不是 38 个产品
  • 试试id_kategori like 'Men%'
  • 那么问题出在您的 SELECT 语句中

标签: php codeigniter


【解决方案1】:

试试这个

在控制器中

$count = $this->rci_model->get_count(); //get number of rows

$config['base_url'] = base_url().'index.php/sandal_clarudo/sandals_for_men/';
$config['total_rows'] = $count;
$config['per_page'] = 5;
$config['uri_segment'] = 3;
$limit = $config['per_page'];

$this->pagination->initialize($config);

$page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;

$data['links'] = $this->pagination->create_links();

$data["results"] = $this->rci_model->fetch_countries($limit, $page);

在模型中

public function get_count() 
{
  //count          
$query=$this->db->query("SELECT * FROM produk WHERE id_kategori='Men'");
$result = $query->result_array();
$count = count($result);
 return $count;
}
//data from table
public function fetch_countries($limit, $page) 
{
$query=$this->db->query("SELECT * FROM produk WHERE id_kategori='Men' LIMIT $page, $limit");
$result = $query->result_array();
return $result;
}

在视图中

//to show data
<?php
foreach ($results as $new_result)
{
echo $new_result['nama_podak'];
}
?>

//to show pagination
<?php
echo $link//Page segment tabs(you can config boostarp for this)
?>

【讨论】:

  • 你太棒了...!!!!!但是没有什么问题使我无法从数据库中调用数据,例如“nama_produk”字段无法显示..
  • 你可以签入wildanisa.com/img/tes3.jpg这意味着不能从数据库中调用数据
  • 天啊!!!!你真聪明!非常感谢你...你帮助我的生活,这个项目明天有截止日期......谢谢你!!!! :D
【解决方案2】:

试试这个。你用limit的时候错了。

$query=$this->db->query("SELECT * FROM produk WHERE id_kategori='Men' order by nama_produk ASC LIMIT $limit, $start");

【讨论】:

【解决方案3】:
$this->db->limit($limit, $start);
$this->db->where('id_kategori', 'men');
$this->db->order_by('nama_produk');
$query = $this->db->get("produk");

希望这项工作!

计数使用:

public function record_count($limit, $start) {
            $this->db->from('count(id_produk) AS count');
            $this->db->where('id_kategori', 'men');
            $this->db->order_by('nama_produk');
            $this->db->limit($limit, $start);
            $return = $query->row_array();
            return $return['count'];
        }

【讨论】:

  • 我认为我在公共函数 record_count() { return $this->db->count_all("produk"); 中有问题} cz of that product show 38,,你能帮我改变一下显示 11 个产品的特定产品吗?
  • 公共函数 record_count($limit, $start) { $this->db->from('count(id_produk) AS count'); $this->db->where('id_kategori', 'men'); $this->db->order_by('nama_produk'); $this->db->limit($limit, $start); $return = $query->row_array();返回 $return['count']; }
猜你喜欢
  • 1970-01-01
  • 2011-05-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-14
相关资源
最近更新 更多