|
|
|
| Добрый вечер
Подскажите, пожалуйста, как можно сделать динамический запрос в бд, если от пользователя, помимо некой информации, придет (или не придет) информация в checkbox`ах
Пример:
искать тексты
*чекбокс* с одним абзацем
*чекбокс* с двумя абзацами
*чекбокс* с тремя абзацами
Я не знаю, как учесть все возможные варианты, да еще чтобы запрос в бд был корректным
(мне нужно сделать расширенный поиск. Или, может, у кого-то есть ссылки на информативные статьи по создания расширенного поиска?) | |
|
|
|
|
|
|
|
для: neadekvat
(12.05.2009 в 18:06)
| | можешь получать через get параметр чекбокса и включать его(или нет) в запрос к бд | |
|
|
|
|
|
|
|
для: Keyses
(12.05.2009 в 22:02)
| | Это как? оО
У меня идет поисковой запрос методом post, одним из, скажем так, разделов этого расширенного поиска являются чекбоксы
Методом гет я их никак не отправлю
И как составить запрос так, чтобы не было конфликта (если делать с WHERE, чтобы в нужном месте AND вставлялось и тп)
да, кстати, как по вашему, лучше такие запросы делать - сразу большой запрос составлять или вытащить инфу из бд и ее потихоньку отсеивать уже с помощью скриптов? | |
|
|
|
|
|
|
|
для: neadekvat
(12.05.2009 в 22:49)
| | Конечно же post, это я отвлёкся ))
А для корректной вставки данных в SQL-запрос я бы использовал оператор if (true)?(then):(else) | |
|
|
|
|
|
|
|
для: neadekvat
(12.05.2009 в 18:06)
| | обычно используют:
expr IN (value,...)
Возвращает 1, если выражение expr равно любой величине из списка IN, иначе - 0.
Если все величины - константы, то они оцениваются в соответствии с типом выражения expr и сортируются.
Поиск элемента в этом случае производится методом логического поиска.
Это означает, что функция IN является очень быстрой, если список значений IN состоит полностью из констант.
Если expr является зависимым от регистра строковым выражением, то сравнение строк производится с учетом регистра:
mysql> SELECT 2 IN (0,3,5,'wefwf');
-> 0
mysql> SELECT 'wefwf' IN (0,3,5,'wefwf');
-> 1
Начиная с 4.1 (в соответствии со стандартом SQL-99),
IN возвращает NULL не только если выражение в левой части является NULL,
но также если не найдено соответствия в списке и одно из выражений в списке является величиной NULL.
|
если я Вас правильно понял | |
|
|
|