Задать вопрос
@Whey

Как изменить цвет ряда в таблице?

Есть таблица, которая связывается с базой данных. В одном из столбцов базы данных определяется тип. Нужно сделать так, чтобы когда в этом атрибуте было значение "Add" - то менялся цвет на белый, а если "Dell" - на красный.
Если задать статическое значение для ряда, то все работает:
echo '<tr bgcolor=red align="center">';
Однако, когда пытаюсь вместо слова "red" подставить переменную, то цвет таблицы меняется вообще на зеленый.
$setcolor = $test['Type'] == "Add"? "white":"red";
echo 'Type:' . $test['Type'] . ' Setcolor: ' . $setcolor . '<br>';
echo '<tr bgcolor=$setcolor align="center">';

В чем моя ошибка?
  • Вопрос задан
  • 104 просмотра
Подписаться 2 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Решения вопроса 1
slo_nik
@slo_nik Куратор тега PHP
Доброе утро.
Не используйте bgcolor, нафталином попахивает...
Не показывайте html через echo.
Вы подставляете переменную, но Вы её не показываете. Необходимо использовать echo или её псевдоним.
Или <?php echo $color ?> или <?= $color ?>
Так же необходимо значение атрибутов html тегов обрамлять кавычками.
<?php
 $type = 'add';
 $color = $type == 'add' ? 'red' : 'white';
?>
<table style="width: 200px; height: 100px;">
  <tr style="background:<?= $color ?>">
    <td></td>
    <td></td>
    <td></td>
  </tr>
  <tr style="background:<?= $color ?>">
    <td></td>
    <td></td>
    <td></td>
  </tr>
  <tr style="background:<?= $color ?>">
    <td></td>
    <td></td>
    <td></td>
  </tr>
  <tr style="background:<?= $color ?>">
    <td></td>
    <td></td>
    <td></td>
  </tr>
</table>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы