2016-10-01 75 views
0

我有一个数据库在mysql中有两个表一个命名的类别(cat_id主键)和一个命名的书(b_id作为主键)其中cat_id是书的外键。 我在CI工作,我在这里输出的类别视图:如何将参数传递给控制器​​在codeIgniter

 foreach($categories->result()as $row){ 
 
      foreach($categories->result()as $row){ 
 
     echo '<a href="category_details?cat_id=$cat_id">'.$row->category.'</a><br>'; 
 

 
    } 
 

 
     }

我想要点击的链接category_details时,只输出该类别的书籍。 在这里,我有我的控制器,这个方法:

public function category_details($data) 
 
    { 
 
     $data['cat_id'] = $this->home_model->output_cat_detail(); 
 
     $data['category_detail'] = $this->home_model->output_cat_detail();//printon librat 
 
     $data['categories'] = $this->home_model->output_categories(); 
 
     $this->load->view('header', $data); 
 
     $this->load->view('category_details', $data); 
 

 

 
    }

所以模型,它确实是选择的方法是这样的:

public function output_cat_detail(){ 
 
    $condition = "cat_id =" . "'" . $data['cat_id'] . "'"; 
 
    $this->db->select('*'); 
 
    $this->db->from('book'); 
 
    $this->db->where($condition); 
 
    $query = $this->db->get(); 
 
    return $query;

但经过当我点击某个类别时,我会这样做只是我点击过的那个类别的书。有人可以帮助我选择该类别的书吗?

回答

0
public function category_details($id){ 
    $data = array(); 
    $data['category_detail'] = ""; 
    $query = $this->db->get_where('book', array('id' => $id)); 
    // Your current model logic will not work for this 
    if($query->num_rows() > 0){ 
     $data['category_detail'] = $query->result(); 
    } 
    $this->load->view('header', $data); 
    $this->load->view('category_details', $data); 
} 
+0

OIt说undefined变量id – Daniel

+0

它应该在哪里需要这个变量$ id? – Daniel

相关问题