Как правильно сформировать запрос к БД (php) с фильтрами?
Есть форма на странице, в ней несколько элементов (5 селектов, 1 чекбокс...)
Они представляют собой фильтр данных (город, дата... и т.д.)
После отправки формы, исходя от выбранных фильтров нужно сформировать запрос к БД.
Обыкновенный:
"SELECT * FROM users WHERE city='".$city."' AND date='".$date."'";
не получится, так как когда не будет выбран один с фильтров, то будет искать пустое значение в таблице.
$city = '';
SELECT * FROM users WHERE city=''
в итоге ничего не найдет
Надеюсь я понятно обьяснил ситуацию?
P.S. нужен работоспособный код, просто догадки не пишите, так как часто они не верны, и толку от них 0, если знаете как сделать то лучше напишите кодом. заранее благодарен. Делал с помощью условий, и оператора .= в зависимости от активного фильтра добавлял его к строке запроса
Примечание:
Нет, не понятно. Например, что мешает выполнять проверку входных данных средствами php?
На проверку чего?
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.