Как установить цвет таблицы в зависимости от ее значения в PHP? - PullRequest
0 голосов
/ 30 апреля 2020
 <?php
 $res=mysqli_query($con,"select * from tab_cont");
 while($rows = mysqli_fetch_assoc($res))
 {
 echo "<tr>";
        echo    "<td>"; echo $rows["id"]; echo"</td>";
        echo    "<td>";echo $rows["date"]; echo "</td>";
        echo    "<td>";echo $rows["category"];echo "</td>";
        echo    "<td>";echo $rows["issue"];echo "</td>";
        echo    "<td>";echo $rows["cr_status"];echo "</td>";
        echo    "<td>";echo $rows["priority"];echo "</td>";
        echo    "<td>"; echo $rows["assigned"]; echo "</td>";
        echo    "<td>"; echo $rows["escalation"]; echo "</td>";
        echo    "<td>"; echo $rows["action"]; echo "</td>";
        echo    "<td>"; echo $rows["resol"]; echo "</td>";
        echo    "<td>"; ?> <a href="edit.php?id=<?php echo $rows["id"];?>"><button type="button" class=btn btn-success">Edit</button> <?php echo "</td>";
        echo    "<td>"; ?> <a href="delete.php?id=<?php echo $rows["id"];?>"><button type="button" class=btn btn-danger">Delete</button> <?php echo "</td>";


 }

 ?>

Здесь я хочу установить цвет для cr_status на основе его значений "open: green" и "red: close". Я пробовал foreach () код, после echo $ строки ["cr_status"]; эхо ..... . Но я получил ошибку «неожиданный foreach ()» в браузере. Код, который я использовал:

     foreach($rows["cr_status"] as $cell) 
{
    if($cell=="OPEN")
    {

            echo '<td style="background:#FF6347">'.$cell.'</td>';

    } 
    elseif ($cell=="CLOSE") 
    {

            echo '<td style="background:#228B22">'.$cell.'</td>';
    }
}

Может кто-нибудь, плз, помогите мне с этим кодом?

1 Ответ

1 голос
/ 30 апреля 2020

$rows["cr_status"] не является массивом, поэтому нет смысла проходить через него oop. Это причина вашей ошибки. Не совсем понятно, что, по вашему мнению, должен был делать этот код.

Если вы просто хотите установить цвет ячейки cr_status (и открывать / закрывать - это только два состояния), тогда

echo "<td style='background:".($rows["cr_status"] == "OPEN" ? "#FF6347" : "#228B22")."'>".$rows["cr_status"]."</td>";

должен делать то, что вам нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...