Оператор PHP if не работает

Я написал код, где значение получено от mysql, и если оно равно 1, то строка должна быть красного цвета, а если она равна 0, строка должна быть зеленого цвета. Когда я выполняю код, он всегда переходит к инструкции else.

Код выглядит следующим образом:

while ($row = mysqli_fetch_array($result))
{
    $bprofit=$row['profit_loss'];
    if ($bprofit == "1") {
        $colour='#FF0000';
    } else  {
        $colour='#31B404';
    }
    echo "<tr bgcolor=$colour>";
    echo "<td>" . $bprofit . "</td>";
}

and output is:

1
0 0 all in green colour only.

Any suggestions?

0
звучит как ваш $ bpropfit никогда не равен «1», поэтому «var_dump ($ bprofit)»; перед «if» и опубликовать его
добавлено автор snitch182, источник

5 ответы

У вас есть дополнительный p в $ bpprofit:

if ($bprofit == "1")
2
добавлено
@ user2028837 Добро пожаловать :-) Не забудьте принять один из этих ответов, чтобы сохранить ваш Accept Score в зеленой зоне, если вы хотите помочь с будущими вопросами.
добавлено автор Rick Kuipers, источник
Пик небрежности ... Большое спасибо Рик
добавлено автор Arvind, источник

В дополнение к орфографии, упомянутой в других ответах, я думаю, вам нужно ссылаться на первый индекс массива следующим образом:

if ($ bprofit [0] == "1") ...

РЕДАКТИРОВАТЬ

На основании вашего нового кода вы уверены, что возвращаемое значение является строкой, а не цифрой? Если это числовое значение, вы бы хотели, чтобы ваш оператор if выглядел следующим образом:

if ($ bprofit == 1) ...

1
добавлено
Nevermind - вы изменили исходный код, который вы опубликовали ...
добавлено автор TMan, источник

В подобных ситуациях никогда не помешает использовать функцию var_dump() и посмотреть что фактически содержит переменная и как вам нужно получить к ней доступ.

1
добавлено

change if ($bpprofit == "1") to if ($bprofit == "1")

1
добавлено

При возникновении проблем, подобных описанным выше, попробуйте активировать отчет об ошибках в PHP. Один из способов сделать это - обновить php.ini, но поскольку это может повлиять на другие проекты, в которых вы не хотите сообщать об ошибках, было бы лучше активировать его, когда это необходимо.

Важно то, что вы включаете отчетность об уведомлениях, поскольку они появятся, когда вы используете переменную, которая не была установлена.

Код ниже - простой пример:

<?php error_reporting(E_ALL);

if ($undefined == 1) {
   //do stuff
}

Когда эта страница отображается, будет показано уведомление:

Примечание: неопределенная переменная: undefined in   /var/www/test/undefined_example.php в строке 3

Конечно, это может быть не подходящее решение для всех проблем, но это может помочь вам понять, где искать.

Это может также сделать вас лучшим программистом; путем «напоминания» вам объявить переменные со стандартным значением, если они не всегда назначаются перед последующим использованием.

0
добавлено
phpGeeks
phpGeeks
3 620 участник(ов)

Best PHP chat Еще: @dbGeeks - базы данных @phpGeeksJunior - новичкам @moscowProgers - IT Москва @ebanoePhp - весёлый канал о PHP @laravel_pro - Laravel @jobGeeks - вакансии @jsChat - JS Правила: https://t.me/phpGeeks/764859 ДР - 28.03.2016

PHP
PHP
1 309 участник(ов)

Группа про современный PHP. Обсуждаем ООП, TDD, BDD, DDD, SOLID, GRASP и прочие крутые базворды Для ознакомления: https://gist.github.com/mkusher/711bd46f0b62fbae851182e6fb3b1839 Группа PHP для новичков @phpGeeksJunior Вакансии: https://t.me/fordev

PHP — вакансии, поиск работы и аналитика
PHP — вакансии, поиск работы и аналитика
1 251 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению PHP, Laravel, Symfony, Yii и т.д. Здесь всё: full-time, part-time, remote и разовые подработки. См. также: @qa_jobs, @devops_jobs, @javascript_jobs, @nodejs_jobs, @uiux_jobs, @products_jobs

phpGeeksJunior
phpGeeksJunior
980 участник(ов)

Группа для новичков. Не стесняйтесь задавать вопросы по php. Не флудить!!!! Правила и полезные ссылки https://gist.github.com/exileed/a53dd0617b35a705ff44b38c8028e6a5 Бест от пхпгикс https://t.me/best_of_phpgeeks

phpclub.ru
phpclub.ru
872 участник(ов)

Официальный чат phpclub.ru - остерегайтесь подделок #rules Правила группы - уважайте друг друга. Скриншоты -> ссылками. Код -> pastebin.com. Вакансии строго -> https://goo.gl/4bNxym, в чат ссылку. За рекламу и мат - БАН!

Devall | PHP
Devall | PHP
272 участник(ов)

Пристанище для восходящих звёзд разработки, которые перейдут на более адекватные языки. http://combot.org/chat/-1001014863761 Инвайт: j.mp/devallphp