CodeIgniter只显示我的表中的一个结果

时间:2013-06-13 21:22:15

标签: codeigniter

SELECT * FROM image;

我正在使用该查询从图像表中获取数据,当我使用此查询直接检查到mysql命令行时,它显示了3个这样的结果

3 rows in set (0.00 sec);

但是,当我尝试使用query或active_record从codeigniter获取它时,它只显示1个结果。这是我的代码

class Produk_model extends CI_Model{
    function __construct(){
        parent::__construct();
    }

    function get_phome(){
        $this->db->select('nama_produk, nama_seo, nama_kategori, seo_kategori, nominal_harga');
        $this->db->join('kategori','kategori.id_kategori=produk.id_kategori');
        $this->db->join('harga','harga.id_produk=produk.id_produk');
        $q=$this->db->get('produk');
        if($q->num_rows()){
            return $q;
        }
    }

    function get_all_pimage(){
        $q=$this->db->get('image');
        if($q->num_rows()>0){
            return $q;
        }
    }

    function get_by_kategori($kategori_name=''){
        $this->db->select('nama_kategori, seo_kategori, nama_produk, nama_seo, nominal_harga, url_img');
        $this->db->join('kategori', 'kategori.id_kategori=produk.id_kategori');
        $this->db->join('harga','harga.id_produk=produk.id_produk');
        $this->db->join('image','image.id_produk=produk.id_produk');
        $this->db->where('seo_kategori',$kategori_name);
        $q=$this->db->get('produk');
        if($q->num_rows()){
            return $q;
        }
    }

    function get_by_produk($produk_name=''){
        $this->db->select('produk.id_produk, nama_produk, nama_seo, short_desc, min_beli, nominal_harga');
        $this->db->join('produk_detil','produk_detil.id_produk=produk.id_produk');
        $this->db->join('harga','harga.id_produk=produk.id_produk');
        $this->db->where('nama_seo', $produk_name);
        $q=$this->db->get('produk');
        if($q->num_rows()){
            return $q;
        }
    }

    function get_img_by_produk($produk_id=''){
        $this->db->select('url_img');
        $this->db->where('id_produk', $produk_id);
        $q=$this->db->get('image');
        if($q->num_rows()){
            return $q;
        }
    }
}

我正在尝试将get_all_pimage()与我的控制器中的函数一起使用

function home(){
            $this->load->model('produk_model');
            $data['konten']=$this->produk_model->get_phome()->result();
            $data['img']=$this->produk_model->get_all_pimage()->row_array();
            $this->load->view('frontend/home', $data);
        }

但它只显示了1个结果,如下:

Array
(
 [id_image] => 2
 [id_produk] => PRD002
 [seo_image] => pastel-1
 [url_img] => pastel-1.jpg
)
我很困惑,为什么会发生这种情况。因为我不知道哪里出错了。谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

将功能更改为..

function get_all_pimage(){
$q=$this->db->get('image');
if($q->num_rows()>0){
    return $q->result_array();
 }
 }

从你的电话中取出row-> Array()...就像这样..

 $data['img']=$this->produk_model->get_all_pimage();

然后预告......

foreach($data['img'] as $val){
  //display you data
}
相关问题