我一直在做codeigniter項目。MySQL查詢根據兩個不同表中的值選擇一個表。
這裏是我的表
category
cid cname
5 general
6 science
7 math
books
bid bname
12 first
13 second
14 third
15 fourth
16 fifth
17 sixth
dir
id bid cid
1 12 5
2 13 6
3 14 7
4 15 6
5 16 5
6 17 5
我想顯示爲
general 3
science 2
math 1
,我已經在模型下面的函數代碼實現
function category_details(){
$this->db->order_by('cname','asc');
$query=$this->db->query('Select category.cid,category.cname,count(dir.cid) from dir join category on category.cid=dir.cid join books on dir.bid=books.bid group by category.cname');
return $query->result_array();
}
現在我想創建一個鏈接,打開每個類別並在裏面顯示書籍。
這裏是我正在試圖做到這一點,
View
<a href="<?php echo site_url('category/books/'.$val['cid']);?>">Open</a>
Controller
public function books($cid){
$data['books']=$this->books_model->get_books($cid);
$this->load->view('header',$data);
$this->load->view('category_books',$data);
$this->load->view('footer',$data);
}
Model
function get_books($cid){
$this->db->where('dir.cid',$cid);
$query=$this->db->query('select * from books join dir on books.bid=dir.bid join category on dir.cid=category.cid');
return $query->result_array();
}
但是,這導致選擇所有的書籍,而不是根據$ CID我通過(雖然我可以看到在傳遞$ CID URL)。
希望有任何幫助。