我遇到了一个问题,我无法按照我想要的方式制作我的 php 表... 这是我的数据,我选择的结果如下表所示:
SELECT Class, Subject, Category,
SUM(IF(DateClass = "2018-06-01", 1, 0)) AS _01_,
SUM(IF(DateClass = "2018-06-02", 1, 0)) AS _02_,
SUM(IF(DateClass = "2018-06-03", 1, 0)) AS _03_, SUM(IF(Class != 'BLANK',1,0)) Total
FROM tblClass WHERE DateClass LIKE '2018-06%'
|Class |Subject |Category|_01_|_02_|_03_|Total|
|1 |Hardware|Printer |1 |0 |3 |4 |
|1 |Hardware|HDD |0 |2 |1 |3 |
|1 |Software|PHP |3 |0 |0 |3 |
|1 |Software|vb.net |0 |4 |2 |6 |
|2 |Software|PHP |9 |0 |1 |10 |
|2 |Hardware|PSU |10 |1 |9 |20 |
但我希望表格变成:
|Class |Subject |Category|_01_|_02_|_03_|Total|
|1 |Hardware|Printer |1 |0 | 3 |4 |
| | |HDD |0 |2 |1 |3 |
| |Software|PHP |3 |0 |0 |3 |
| | |vb.net |0 |4 |2 |6 |
|2 |Software|PHP |9 |0 |1 |10 |
| |Hardware|PSU |10 |1 |9 |20 |
有人可以指导我吗?
PHP 代码:
<table>
<tr>
<td>Class</td>
<td>Subject</td>
<td>Category</td>
<td>_01</td>
<td>_02_</td>
<td>_03_</td>
<td>Total</td>
</tr>
<tr>
<?php
$mysqli = new mysqli(servername,username,password,db);
$query = $mysqli->query("
SELECT Class, Subject, Category,
SUM(IF(DateClass = "2018-06-01", 1, 0)) AS _01_,
SUM(IF(DateClass = "2018-06-02", 1, 0)) AS _02_,
SUM(IF(DateClass = "2018-06-03", 1, 0)) AS _03_, SUM(IF(Class != 'BLANK',1,0)) Total
FROM tblClass WHERE DateClass LIKE '2018-06%'
");
foreach($query as $result){
echo "<td>".$result['Class']."</td>"
echo "<td>".$result['Subject']."</td>"
echo "<td>".$result['Category']."</td>"
echo "<td>".$result['_01_']."</td>"
echo "<td>".$result['_02_']."</td>"
echo "<td>".$result['_03_']."</td>"
echo "<td>".$result['Total']."</td>"
}
?>
</tr>
</table>
这是 php 代码,我很抱歉犯了错误......
最佳答案
请尝试遵循代码。我希望下面的代码能够帮助您获得结果。如果您遇到任何问题或发现任何修改,请告诉我。
<table border="1" cellpadding="5", cellspacing="0">
<?php
$cls = null;
$sub = null;
$cat = null;
foreach($query as $result){
if($cls != $result['Class'] && $cls != null) {
$sub = null;
$cat = null;
}
echo '<tr>';
echo '<td>';
echo ($cls != $result['Class'] ? $result['Class'] : '');
echo '</td>';
echo '<td>';
echo ($sub != $result['Subject'] ? $result['Subject'] : '');
echo '</td>';
echo '<td>';
echo ($cat != $result['Category'] ? $result['Category'] : '');
echo '</td>';
echo '<td>'.$result['_01_'].'</td>';
echo '<td>'.$result['_02_'].'</td>';
echo '<td>'.$result['_03_'].'</td>';
echo '<td>'.$result['Total'].'</td>';
echo '</tr>';
$cls = $result['Class'];
$sub = $result['Subject'];
$cat = $result['Category'];
}
?>
</table>
关于php - 如何设置 php 与 html 表特定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51550219/