#php
#php
Вопрос:
Мне просто интересно, как проверить, есть ли значение в столбце в таблице базы данных? Столбец назван star
, и я хочу проверить, имеет ли он значение 1, если нет, то ничего не делайте.
while($row01 = $res01->fetch_object()) {
if ($res01->star[$row01] == 1) { ??????????
}
}
Я использую этот ЦИКЛ WHILE для извлечения информации из таблицы о некоторых объектах. Для некоторых объектов у меня есть столбец с именем STAR, который равен 1 или НУЛЮ. Пока я создаю HTML-код в переменные I в этом цикле, я также проверяю, имеет ли объект 1 в столбце STAR, и если да, я создаю другую переменную с некоторым HTML-кодом для использования в списке всех объектов в таблице.
Но когда я использую if ($row01-> star == ‘1’), это не работает, и я не знаю почему!? Когда я использую это, получается, что да, у всех объектов есть 1, но только у нескольких есть 1, остальные имеют нулевое значение. Извините, но я должен отойти от компьютера на несколько часов, но я надеюсь решить это позже сегодня! Спасибо!
Комментарии:
1. Взгляните на руководство по правильной нотации: php.net/manual/en/mysqli-result . fetch-object.php Вам не нужно рассматривать его как индекс массива. Это объект.
2. Вам нужно показать код вашего запроса и образец информации в базе данных.
Ответ №1:
Закрыть, но вы неправильно ссылаетесь на столбец.
if ($row01->star == 1) { /* do things */ }
Комментарии:
1. Спасибо, но это не работает! Это как будто я получаю «да» для всех строк в таблице?! У меня в полях либо 1, либо NULL, а тип — INT. Что может быть не так?
2. @3D-kreativ Я бы проверил, правильно ли вы получаете столбцы / таблицу. Используйте if($res01->num_rows), чтобы проверить, вернули ли вы что-нибудь.
3. Можете ли вы выполнить для нас print_r из $ row01?
4. @3D-kreativ Можете ли вы отредактировать свой пост с результатами? Попробуйте if($row01->star == ‘1’)