我有一个长表,只有当它不为空时,我才需要显示列名及其各自的值。所以,这是我提出的一个概念,但实施不起作用。
$sql = "Select * from audittable where id = " . $id;
$result = mysql_query($sql) or die(mysql_error());
$sqlfields = 'SHOW COLUMNS FROM audittable where field not in ("audit_id","last_by","last_datetime","id")';
$fieldsquery = mysql_query($sqlfields);
echo "<table style='width:100%;padding:8px'>
<tr class='heading'><td>Field Name</td><td>Value</td></tr>";
while ($row = mysql_fetch_array($result)) {
foreach ($rowfields = mysql_fetch_array($fieldsquery)) {
if ($rowfields["field"] == $row[0] && $row[0]!=""){
?>
<tr>
<td><?=$row[0]?></td>
<td><?=$row[1]?></td>
</tr>
<?php
}
}
}
echo "</table>";
我不确定逻辑是否正确(两个循环),有什么想法吗?
也许我不够清楚,该表包含 50 个字段,很可能其中 3 或 4 个字段每行都有一个值,我只需要显示那些有值的列
谢谢