2016-03-03 25 views
0

我有一個這樣的數據庫中的一些記錄:PHP/HTML - 如何在像「的方向旋轉文本多達上EXCELL」 HTML表格創建記錄

+---------------------+--------------------------+--------+--------+------------+---------+----------+------+ 
| NAMA_TYPE   | NAMA_ITEM    | DAMAGE | REPAIR | REMARKS | MANHOUR | MATERIAL | AC | 
+---------------------+--------------------------+--------+--------+------------+---------+----------+------+ 
| Cleaning   | Certificate    | NULL | NULL | NULL  | NULL |  NULL | NULL | 
| Cleaning   | Interior     | 01  | 31  | ACETONE - | 0.00 | 70.00 |  | 
| Cleaning   | Exterior     | NULL | NULL | NULL  | NULL |  NULL | NULL | 
| Cleaning   | Foreign Marking   | NULL | NULL | NULL  | NULL |  NULL | NULL | 
| Frame    | Under Side    | 01  | 30  | Test  | 0.01 |  0.01 |  | 
| Frame    | Left Side    | NULL | NULL | NULL  | NULL |  NULL | NULL | 
| Frame    | Front End    | NULL | NULL | NULL  | NULL |  NULL | NULL | 
| Frame    | Right Side    | NULL | NULL | NULL  | NULL |  NULL | NULL | 
| Frame    | Rear End     | NULL | NULL | NULL  | NULL |  NULL | NULL | 
| Frame    | Top Side     | NULL | NULL | NULL  | NULL |  NULL | NULL | 
| Frame    | Ladder     | NULL | NULL | NULL  | NULL |  NULL | NULL | 
| Frame    | Walkway     | NULL | NULL | NULL  | NULL |  NULL | NULL | 
+---------------------+--------------------------+--------+--------+------------+---------+----------+------+ 
用PHP

現在,查詢執行它,將它們存儲到名爲$detail的變量中。

我抓住它並顯示在html上,結果如上表所示。這是代碼。

<table cellpadding ="1.1" width="100%"> 
    <tr style="border:0"> 
     <th align="center">Type</th> 
     <th align="center"style="width:14%">Item</th> 
     <th align="center" style="width: 5%">Damage</th> 
     <th align="center" style="width: 5%">Repair</th> 
     <th align="center" style="width: 40%">Remarks</th> 
     <th align="center">Manhour</th> 
     <th align="center">Material</th> 
     <th align="center">A/C</td> 
    </tr> 


    <?php 
    foreach ($detail as $row) { 
     echo "<tr style='border:0'>"; 
     echo '<td style="border-right:0; border-left:0;">' . $row->NAMA_TYPE . "</td>"; 
     echo '<td>' . $row->NAMA_ITEM . "</td>"; 
     echo '<td>' . $row->DAMAGE . "</td>"; 
     echo '<td>' . $row->REPAIR . "</td>"; 
     echo '<td>' . $row->REMARKS . "</td>"; 
     echo '<td>' . $row->MANHOUR . "</td>"; 
     echo '<td>' . $row->MATERIAL . "</td>"; 
     echo '<td>' . $row->AC . "</td>"; 
    } 
    ?> 
</table> 

我的問題是,請參閱名稱類型字段。 IST是可能的垂直顯示顯示cleaning只有一次,但仍然舒展基於項目的計數這樣

+----------+------------------+ 
|NAMA TYPE |  NAMA ITEM | 
+----------+------------------+ 
|  C | Certificate  | 
|  L | 
|  E |------------------+ 
|  A | Interior   | 
|  N |------------------+ 
|  I | Exterior   | 
|  N |------------------+ 
|  G | Foreign Marking | 
+----------+------------------+ 
|  F | Under side  | 
|  R |------------------+ 
|  A | Left Side  | 
|  M |------------------+ 
|  E | Interior   | 
|   |------------------+ 
|   | Exterior   | 
|   |------------------+ 
|   | Foreign Marking | 
+----------+------------------+ 

這是cleaning就像旋轉-45度(「像方向旋轉文本起來EXCELL」)。任何幫助,如此讚賞。

有人嗎? 謝謝你這麼多

回答

1

使用rowspan

做你的循環,像這樣..

$i = 0; 
foreach ($detail as $row) { 
    echo "<tr style='border:0'>"; 
    if($i==0) echo '<td rowspan="'.count($detail).'" style="border-right:0; border-left:0;">' . $row->NAMA_TYPE . "</td>"; 
    echo '<td>' . $row->NAMA_ITEM . "</td>"; 
    echo '<td>' . $row->DAMAGE . "</td>"; 
    echo '<td>' . $row->REPAIR . "</td>"; 
    echo '<td>' . $row->REMARKS . "</td>"; 
    echo '<td>' . $row->MANHOUR . "</td>"; 
    echo '<td>' . $row->MATERIAL . "</td>"; 
    echo '<td>' . $row->AC . "</td>"; 
    $i++; 
} 

併爲使文字垂直,在這裏看到:https://davidwalsh.name/css-vertical-text