我希望文本颜色根据目标而变化。基本上 0 到 100 之间的任何东西都是绿色的,100 到 125 之间的东西是黄色的,超过 125 的东西都是红色的。但这仅适用于 1 个特定部门。假设我在另一个部门的某个人没有相同的阈值,那么低于 150 的任何东西都会是绿色等等......
这是我正在使用的代码。
while ($row = mysql_fetch_array($query)) {
echo "<tr>";
echo "<td>".$row['Department']."</td>";
if (($row['Hold'] >= 0) && ($row['Handle_Time'] <= 100)) {
echo "<td style=\"color:#005e20; font-weight: bold;\">".$row['Handle_Time']."</td>"; //green
} elseif (($row['Handle_Time'] >= 100.01) && ($row['Handle_Time'] <= 124.99)) {
echo "<td style=\"color:#e77904; font-weight: bold;\">".$row['Handle_Time']."</td>"; // yellow
} elseif ($row['Handle_Time'] >= 125) {
echo "<td style=\"color:#FF0000; font-weight: bold;\">".$row['Handle_Time']."</td>"; // red
} else {
echo "<td>".$row['Hold']."</td>"; // no color
}
echo "</tr>";
}
我想到的是一个 MySQL 表,它有每个部门的阈值。每个人都有一个部门代码,我希望部门匹配目标并相应地更改颜色。
这是名为的目标表stats_threshold
Department Metric Target Yellow Red
------------------------------------------------------
WR Handle_Time 100.00 124.99 125.00
CA Handle_Time 100.00 124.99 125.00
RET Handle_Time 120.00 169.99 170.00
CET Handle_Time 200.00 249.99 250.00
如何查询部门代码以匹配表中的部门,然后echo
是目标和阈值。预期结果(颜色栏不存在,只是为了显示文本颜色应该是什么)
Department Handle_Time Colors
------------------------------------------------------
CA 66 GREEN
CA 118 YELLOW
CA 137 RED
WR 96 GREEN
WR 102 YELLOW
WR 143 RED
RET 119 GREEN
RET 163 YELLOW
RET 240 RED
CET 199 GREEN
CET 201 YELLOW
CET 251 RED