2017-01-24 11 views
0

配列データをテーブルに表示しようとしましたが、完全に行っていますが、以下のメジャーフィールドnameを持つ特定のフィールドに基づいてデータ配列を表示する方法は、テーブル内のデータ。CodeIgniterの特定のフィールドに基づいてデータ配列を作成します

例データ

| Name | Option | Value  
=============================== 
    | Ahmad | High | 90 
    | Smith | Low  | 43 
    | John | Low  | 55 
    | Adam | High | 79 
    | Smith | High | 80 
    | Adam | Low  | 55 
    | Ahmad | Low  | 48 
    | John | High | 90 

そして、私は

  |  Option  | 
================================    
    | Name | High | Low |  
===============================| 
    | Ahmad | 90 | 48 | 
    | Smith | 80 | 43 | 
    | John | 90 | 55 | 
    | Adam | 79 | 55 | 

コントローラ

function detail_data() {    
     $data = array(
      'detail_option' => $this->my_model->model_detail($metadata_code), 
     );     
    $this->load->view('my_view', $data); 
} 

モデル

function model_detail() { 
    $query = $this->db->select('*') 
         ->from('tb_student') 
         ->group_by('name') 
         ->get();  

    if ($query->num_rows() > 0) { 
     foreach ($query->result() as $data) { 
      $result_data[] = $data; 
     } 
     return $result_data; 
    } 
} 
を期待データを以下の

ビュー

<table> 
    <thead> 
    <tr> 
     <td rowspan="2">Name</td> 
     <td colspan="2">Option</td> 
    </tr> 
    <tr> 
     <td>High</td> 
     <td>Low</td> 
    </tr> 
    </thead> 
    <tbody> 
    <?php 
     foreach ($detail_option as $row) { 
     echo '<tr>'; 
      echo '<td>'.$row->name.'</td>'; 
      echo '<td>'.$row->high.'</td>'; 
      echo '<td>'.$row->low.'</td>'; 
     echo '</tr>'; 
     } 
    ?>    
    </tbody> 
</table> 

答えて

1

コントローラー:

function detail_data() {    
     $data = array(
      'detail_option' => $this->my_model->model_detail() 
     );     
    $this->load->view('my_view', $data); 
} 

モデル:

function model_detail() { 
    $query = $this->db->query("SELECT * FROM `tb_student`"); 

    $result_data = array(); 

    if ($query->num_rows() > 0) { 
     foreach ($query->result() as $data) { 
      $result_data[$data->Name]['Name'] = $data->Name; 
      $result_data[$data->Name][$data->Option] = $data->Value; 
     } 
     return $result_data; 
    } 
} 

HTML:

<table> 
    <thead> 
    <tr> 
     <td rowspan="2">Name</td> 
     <td colspan="2">Option</td> 
    </tr> 
    <tr> 
     <td>High</td> 
     <td>Low</td> 
    </tr> 
    </thead> 
    <tbody> 
    <?php 
     foreach ($detail_option as $row) { 
     echo '<tr>'; 
      echo '<td>'.$row['Name'].'</td>'; 
      echo '<td>'.$row['High'].'</td>'; 
      echo '<td>'.$row['Low'].'</td>'; 
     echo '</tr>'; 
     } 
    ?>    
    </tbody> 
</table> 

あなたが望んでいたこの何かか?

+0

私はあなたのスクリープを試してみます –

+0

上記の変数名でerrを削除しました。 – Prakash

+0

データがすべて表示されないので空白 –

関連する問題