2017-05-09 11 views
0

カテゴリ "木"をコードネイタでどのように行うのですか? 私は "$ this-> db-> join( 'kategorijos'、$ kategorija ['pavadinimas'] '= sub_kategorijos.kategorijos_id');に問題があります。リクエストのカテゴリはどのようにして行われますか?カテゴリ - >サブカテゴリ

public function get_categories(){ 
    $this->db->order_by('pavadinimas'); 
    $query = $this->db->get('kategorijos'); 
    return $query->result_array(); 
} 

public function get_sub_categories(){ 
    $this->db->select('*'); 
    $this->db->from('sub_kategorijos'); 
    $this->db->join('kategorijos', $kategorija['pavadinimas'].'= sub_kategorijos.kategorijos_id'); 
    $query = $this->db->get(); 
    return $query->result_array(); 
} 
+0

docsのルールに従っているとは思われません:$ this-> db-> join( 'comments'、 'comments.id = blogs.id'); '。また、あなたは$ kategorija ['pavadinimas'] 'をメソッドに定義していません。 – Tpojka

答えて

0

は、私はあなたが、あなたはあなたのget_sub_categories方法と統合するためにデータを操作、get_categories方法でforeachを行う示唆しています。例:

public function get_sub_categories($category_id){ 
    if(isset($category_id)) 
    { 
     $this->db->select('*'); 
     $this->db->where('category_id',$category_id); 
     $this->db->from('sub_kategorijos'); 
     $query = $this->db->get(); 
     return $query->result_array(); 
    }else 
    { 
     return false; 
    } 
} 

public function get_categories(){ 
    $this->db->order_by('pavadinimas'); 
    $query = $this->db->get('kategorijos'); 
    $array = $query->result_array(); 
    $output = []; 
    foreach($array as $data) 
    { 
     $subcategories_data = $this->get_sub_categories($data['category_id']); 
     if($subcategories_data) 
     { 
      $output[$data] = $subcategories_data; 
     } 
    } 
    return $output; 
} 
関連する問題