簡體   English   中英

如何在codeigniter中使用引導鍵從子表中獲取圖像

[英]How to get images from child table with primer key in codeigniter

我在數據庫“cardetails”,“pricedetails”和“stockimages”中有三個表。

我正在使用Codeigniter中的join來獲取三個表上方的所有記錄。 我從兩個表中獲取數據,但我無法從“stockimages”獲取圖像數據

表詳情: -

1. Cardetails
carid Make   Model  Color Body user_id
1     Hundai Varna  White Sand  1
2     Audi   A5     White Sand  1
3     BMW    A3     White Sand  1
4     Audi   A1     White Sand  1

2. Pricedetails
priceid carid minPrice MaxPrice
1         3   15000    22000

3. stockimaes
imgid carid imagesurl
1       3    url 1
2       3    url 2
3       3    url 3
4       3    url 4
5       3    url 5

我想在頭版顯示價格和圖像的所有汽車。

public function allCarList($userid){
    $this->db->select('*');
    $this->db->from('cardetails as stock' );
    $this->db->where('stock.user_id', $usrid);
    $this->db->where('deleteid != ',1);
    $this->db->join('price as p', 'stock.carid = p.carid', 'LEFT');
    $this->db->order_by('carid','desc');
    $q = $this->db->get()->result();
    return $q;
} 

無法獲取包含與相同carid相關的所有行的圖像。

您的代碼問題是您沒有加入另一個表。 你只包括這兩個加入( cardetailsprice ):

$this->db->from('cardetails as stock' );
$this->db->join('price as p', 'stock.carid = p.carid', 'LEFT');

您需要做的是添加第二個連接,以連接第三個表,通常您可以使用以下語法:

$this->db->select('*');    
$this->db->from('table1');
$this->db->join('table2', 'table1.id = table2.id');
$this->db->join('table3', 'table1.id = table3.id');
$query = $this->db->get();

對於你的例子,它將是:

$this->db->from('cardetails as stock' );
$this->db->join('price as p', 'stock.carid = p.carid');
$this->db->join('stockimaes as img', 'stock.carid = img.carid');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM