如何在不重复表格的情况下放置值

时间:2017-06-30 14:44:35

标签: php codeigniter html-table

我有问题,我需要在表格中加入不同的值,我不知道如何制作结构 这些是数据库中的值:

|--------------|------------|-----------|----------|
|  id_r_a_p_f  |  id_param  |  id_frec  |  value1  |
|--------------|------------|-----------|----------|
|       1      |   Param1   |   Frec1   |   A      |
|--------------|------------|-----------|----------|
|       2      |   Param2   |   Frec1   |   B      |
|--------------|------------|-----------|----------|
|       3      |   Param3   |   Frec1   |   C      |
|--------------|------------|-----------|----------|
|       4      |   Param4   |   Frec1   |   D      |
|--------------|------------|-----------|----------|
|       5      |   Param1   |   Frec2   |   E      |
|--------------|------------|-----------|----------|
|       6      |   Param2   |   Frec2   |   F      |
|--------------|------------|-----------|----------|
|       7      |   Param3   |   Frec2   |   G      |
|--------------|------------|-----------|----------|
|       8      |   Param4   |   Frec2   |   H      |
|--------------|------------|-----------|----------|

这就是我想要的我的观点

|--------------|------------|-----------|
|     Param    |   Frec1    |   Frec2   |
|--------------|------------|-----------|
|     Param1   |   A        |   E       |
|--------------|------------|-----------|
|     Param2   |   B        |   F       |
|--------------|------------|-----------|
|     Param3   |   C        |   G       |
|--------------|------------|-----------|
|     Param4   |   D        |  H        |
|--------------|------------|-----------|

无论我做什么,结果都是一样的, param 重复实现不同。

我从数据库中捕获de值确定,但我不知道在视图中如何放入此样式。如果您有任何工作,我会告诉您查看代码

<table>
   <tbody>
      <tr>
         <td> Param </td>
             <?php
                  $cont_frec = 0;
                     foreach ($query_frec->result() as $frec) {
             ?>     
         <td>
            <?php echo $frec->frec; ?>
         </td>
             <?php
                $cont_frec++;
             }// end foreach frec
             ?>
      </tr>
<?php
    $previous_frec = '';
      for ($rel = 0; $rel < $cont_eval_x_frec; $rel++) {
         if ($prev_param != $list_eval_x_frec[$rel]['id_param']) {
           ?>
           <tr>
              <td>
                  <?php echo $list_eval_x_frec[$rel]['id_param']; ?>   
              </td>
              <?php
            }
             $previous_frec != $list_eval_x_frec[$rel]['id_frec'];
            ?>
            <td>
                <?php echo $list_eval_x_frec[$rel]['value_1']; ?>
            </td>
             <?php
          }// for rel
          ?></tr>
  </tbody>
</table>

1 个答案:

答案 0 :(得分:0)

嗯,我不是那里经验最丰富的PHP编码器,但我的方法是先用你的查询构建一个数组:

$table_frec = array();
while($row = $query_frec->fetch_assoc()){
  $table_frec[$row['id_param']][$row['id_frec']] = $row['value1']
}

这将为您提供一个如下所示的数组:

$table_frec { 
    [Param1]=>{
       [Frec1]=>"A"
       [Frec2]=>"B"
    }
    [Param2]=>{
       [Frec1]=>"C"
       [Frec2]=>"D"
    }
    ...
}

然后您可以使用该数组构建表。