我有一个表,它正在从SQL数据库中读取,其中包含作业编号、相关客户和机器订单。我在"操作"表中还有一个"注释"列,它有时会包含其他人输入的文本。我需要的是显示某种指示,即文本已输入到特定作业ID和操作的注释列中。
到目前为止,我已经尝试了empty函数,但我认为我没有正确显示查询结果,所以它总是说所有作业都有文本。
以下是相关代码:
$conN = mysqli_connect(DB_HOST, DB_USER);
if (!$conN) {die('Could not connect: ' . mysqli_error($conN));} // Check Connection
mysqli_select_db($conN,"jms");
$jid = $row['jobID'];
$opn = $row['operation'];
$highlight = mysqli_query($conN,"SELECT notes FROM operations WHERE jobID=$jid AND operation=$opn");
if (empty($highlight)) {
echo "<td style='background-color:blue;'>"."</td>";
}else{
echo "<td style='background-color:red;'>"."</td>";
}
我得到的是所有单元格中的红色,而我只希望"注释"列中包含文本的单元格显示为红色,而空的单元格应该显示为蓝色。
有人能帮忙吗?
将代码替换为this并检查。。。
<?php
$conN = mysqli_connect(DB_HOST, DB_USER);
if (!$conN) {die('Could not connect: ' . mysqli_error($conN));} // Check Connection
mysqli_select_db($conN,"jms");
$jid = $row['jobID'];
$opn = $row['operation'];
$highlight = mysqli_query($conN,"SELECT notes FROM operations WHERE jobID=$jid AND operation=$opn AND notes !=''");
$rowcount=mysqli_num_rows($highlight);
if(empty($rowcount))
{
echo "<td style='background-color:blue;'>"."</td>";
}
else
{
echo "<td style='background-color:red;'>"."</td>";
}
?>
要显示"notes"列中包含文本的单元格显示为红色,而空单元格应首先显示为蓝色,需要从结果集中获取数据,然后应用条件
$rowcount = mysqli_num_rows($highlight);
if ($rowcount > 0) {
while ($data = mysqli_fetch_array($highlight))
if (isset($data['notes']) && $data['notes'] != "") {
echo "<td style='background-color:red;'>" . "</td>";
} else {
echo "<td style='background-color:blue;'>" . "</td>";
}
} else {
echo "<td style='background-color:blue;'>" . "</td>";
}