Veneomin
@Veneomin

Как организовать множественный OR запрос с динамическим количеством условий?

Есть поиск, в нем пользователь может добавить ряд условий и мне нужно вывести из базы данные в соответствии что он выбрал. Например выбрал он 3 чекбокса и я в базе должен выбрать:
... OR checkbox1=value1 OR checkbox2=value2 OR checkbox3=value3 ...

Как такой запрос формировать? Через if (условие) выходит очень много кода и если будет 20+ пунктов то в обще не реально описать все комбинации чекбоксов. Как это правильно сделать?
  • Вопрос задан
  • 178 просмотров
Решения вопроса 1
VladimirAndreev
@VladimirAndreev
php web dev
последовательно в цикле проверять пункты, записывать условия в массив, в конце его объединять в строку и собирать запрос.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Если пунктов > 2 то:
$InString = '';
        foreach ($_POST["checkbox"] as &$value) {
            $value = intval($value);
            $InString .= $value.",";
        }
        $InString = preg_replace('/,$/ism', '', $InString);

SELECT FROM `indexation_job` WHERE id IN ('.$InString.')
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы