ターゲットに応じてテキストの色を変更したい。基本的に、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