Если не выбран параметр то вывести всё

Как вывести все записи если не выбрано количество комнат?

SELECT * FROM room 
WHERE  id_city='$city' AND people>='$people' AND rooms='$rooms' 

Ответы (1 шт):

Автор решения: teran

обычная такая логика учитывается на этапе формирования самого запроса

if($rooms){
     $sql . " AND rooms = ?";
}

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

с точки зрения самого SQL запроса можно вариировать выборку, например, так

AND ( 
     ($rooms = 0) 
      OR ($rooms > 0 AND rooms = $rooms)
  )
→ Ссылка