2015-02-02 2 views
0

Я показываю результаты базы данных, и я хотел бы скрыть пустые строки. Я проверяю, чтобы оба столбца не отображали 0 перед отображением. Я думал, что понадобится оператор &&, но это не отображает строку, если только один столбец имеет значение 0. Если я изменил его на ||, данные отобразятся правильно. Есть ли причина, почему это работает наоборот, как и ожидалось?PHP и/или показывает напротив того, что должно быть

Вот цикл PHP, который в настоящее время работает правильно (но не как ожидалось):

while($placement = mysqli_fetch_assoc($placeQuery)){ 
    echo '<tr>'; 
    if(($totals[$placeID][$totaldate]['impr'] != 0) || ($totals[$placeID][$totaldate]['amt'] != 0)){ 
     echo '<td>'.$placement['type_name'].'</td>'; 
    } 
} 
+0

ли вы имеете в виду, почему он не работает с оператором AND? – Rizier123

+0

Вы хотите '(x == '') && (y == '') {пустая строка найдена}', в основном. –

ответ

1

Чтобы ответить на «не работает, как ожидалось» часть вопроса, это могло бы помочь прочитать на логических функций , Изучайте таблицы истинности, и такие вещи становятся намного яснее. http://en.wikipedia.org/wiki/Truth_table

И будет ложным для: 0,0 1,0 0,1 и даст верно для 1,1, поэтому использование и означает отображать только если обе колонки не равны нулю.

ИЛИ будет ложным только для: 0,0 и верно для других комбинаций, поэтому использование OR будет отображаться ПОКА оба равны 0.

Смежные вопросы