【发布时间】:2025-02-22 07:15:02
【问题描述】:
我对表格单元格中的值使用 with 语句。在插入此语句之前一切都很好。我要做的就是根据字符串值更改文本上的颜色标签,但现在单元格是空白的,这告诉我没有任何情况是真的。我怀疑如果出现错误,那么语句后面的单元格也会是空白的,但它们是完整的。
如果我不得不猜测,我会说字符串声明中有错误,但我不确定。
<?php
$result = mysql_query("SELECT * FROM logs ORDER BY logid DESC");
while($data = mysql_fetch_array($result))
{
echo '<tr>
<td>'.$data["logid"].'</td>
<td class="center">'.$data["date"].'</td>
<td class="center">';
$log_type='.$data["log_type"].';
switch ($log_type) {
case "Check in":
echo '<span class="label label-success">'.$data["log_type"].'</span>';
break;
case "Log":
echo '<span class="label">'.$data["log_type"].'</span>';
break;
case "Sensor Event":
echo '<span class="label label-important">'.$data["log_type"].'</span>';
break;
}
echo '</td>
<td class="center">'.$data["log_entry"].'</td>
<td class="center">'.$data["customer_id"].'</td>
</tr>';
}
?>
完整的代码块只是简单地从 mysql 表中读取数据,然后以漂亮的表格式将其输出到网站中。通过使用不同的 CSS 类,我可以更改标签颜色。
问题是为什么这个案例只是一个空白单元格?
更新:对于那些阅读本文并寻找具体答案的人,我已更改行:
$log_type='.$data["log_type"].';
到
$log_type=$data["log_type"];
然后就解决了。
【问题讨论】:
-
echo $log_type分配后看看你得到了什么。 -
在您的开关中将
$log_type更改为$data["log_type"],因为$log_type将包含.$data["log_type"].
标签: php mysql switch-statement case