Задать вопрос
@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 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 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>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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