2016-05-23 17 views
0

私はuser_idとuser_role_idという3つのテーブルのケース、user_role_idを持っています。私はuser_idとuser_role_idがあります。 USER_ROLEテーブルで彼の名前にuser_role_idそのうちの一つで、私の成功、しかし、とき、私はここに、SQL一部は致しておりませんデータベース内の3つのテーブルを結合Codeigniter

in models/cases_model.php 
 

 

 
function get_all() 
 
\t { 
 

 
\t $this->db->where('C.is_archived',0); 
 
\t $this->db->select('C.*,U.name client'); 
 
     $this->db->join('users U', 'U.id = C.client_id', 'LEFT'); 
 
     $this->db->join('user_role UR', 'UR.id = C.city_case', 'LEFT'); 
 
\t return $this->db->get('cases C')->result(); 
 
       \t 
 
\t }
in controllers/cases.php 
 

 
function index(){ 
 
\t \t 
 
\t \t $data['cases'] = $this->cases_model->get_all(); 
 
\t \t $data['courts'] = $this->cases_model->get_all_courts(); 
 
\t \t $data['clients'] = $this->cases_model->get_all_clients(); 
 
\t \t $data['locations'] = $this->location_model->get_all(); 
 
\t \t $data['stages'] = $this->case_stage_model->get_all(); 
 
\t \t $data['city'] = $this->cases_model->get_name_city(); 
 
\t \t $data['page_title'] = lang('case'); 
 
\t \t $data['body'] = 'case/list'; 
 
\t \t $this->load->view('template/main', $data); \t 
 
\t }
in view/list.php 
 

 
<?php if(isset($cases)):?> 
 
    <tbody> 
 
     <?php $i=1;foreach ($cases as $new){?> 
 
     <tr class="gc_row"> 
 
     <td><?php echo $i?></td> 
 
\t \t \t \t \t \t \t \t \t 
 
\t \t <td class="small-col"> \t \t \t \t \t \t \t 
 
\t \t <?php if($new->is_starred==0){ ?> 
 
\t \t <a href="" at="90" class="Privat"><span style="display:none"><?php echo $new->id?></span> 
 
\t \t <i class="fa fa-star-o"></i></a> 
 
\t \t <?php 
 
\t \t \t }else{ 
 
\t \t \t ?> 
 
\t \t <a href="" at="90" class="Public"><span style="display:none"><?php echo $new->id?></span> 
 
\t \t <i class="fa fa-star"></i></a> 
 
\t \t <?php 
 
     }?> 
 
\t \t </td> 
 
     <td><?php echo $new->title?></td> 
 
\t \t <td><?php echo $new->case_no?></td> 
 
\t \t <td><?php echo $new->client?></td> 
 
\t  <td><?php echo $new->city_case?></td>

答えて

0

をfaild別のテーブルを結合します。 CIの方法があなたの仕事を妨害している場合は、CIのPDOメソッドの代わりに単純なソリューションを使用する必要があります。

シンプルな言葉に、置き換えることができるようになりました所望の出力

  $this->db->select('*'); 
      $this->db->from('Cases c'); 
      $this->db->join('Users u', 'u.user_id=c.user_id', 'left'); 
      $this->db->join('user_role r', 'r.user_id=c.user_id', 'left'); 
      $this->db->where('c.user_id',$id); 
      $query = $this->db->get(); 

を取得するには、このクエリを試すことができます

$this->db->query({some complex query as String}); 
0

を使用し、ここでの参加のuser_idがプライマリkey..andとしてconsioderedされるもう一つのこと*必須の列名で!

ありがとう。

関連する問題