как реализуется в форме для поиска поле "не важно"

Обсуждение серверного программирования.

Модераторы: Duncon, Yurich

Ответить
Vladd
Сообщения: 2
Зарегистрирован: 17 дек 2007, 17:05

Помогите пожалуйста! Никак не могу понять как реализуется в форме для поиска поле "не важно". есть форма поиска куда заносятся данные для выборки из SQL. там несколько полей с вариантами (<select>) и простые поля для ввода чисел, если пользователь занес данные, выбрал из выпадающего списка нужные параметры, то сделать выборку не сложно. НО КАК все это сделать если пользователь внес данные а в выпадающих списках выбрал поле "не имеет значения" (а в каком-то выпадающем списке выбрал что-то определенное). как в php это реализовать? как должен выглядеть запрос к SQLу (SELECT * FROM..........). Или нужно ввести дополнительные условия? Заранее спасибо!
Akemi
Сообщения: 19
Зарегистрирован: 20 ноя 2007, 14:57
Контактная информация:

если под "не важно" подразумевается что никаких условий кроме введенного в текстовое поле значения нет, то select *
Serge_Bliznykov
Сообщения: 375
Зарегистрирован: 31 авг 2007, 03:06

Vladd,
те условия, которые не выбраны (выбрал поле "не имеет значения")
вообще не учитываются.
По тем же полям, где условия заданы, надо формировать строчку
SELECT * FROM БАЗА WHERE Поле1 = "что ввёдено для поля1" and Поле2="что ввёдено для поля2"
при этом надо учесть тип поля (а они м.быть не только текстовые...)
Vladd
Сообщения: 2
Зарегистрирован: 17 дек 2007, 17:05

Спасибо! Натолкнули на идею!! вроде получилось!!
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

я бы сделал так:
$query="select * from my_table where TRUE";
if ($field1<>"Все равно")
{$query.=" and field1=$field1";}
if ($field2<>"Все равно")
{$query.=" and field2=$field2";}
и т.д.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Ответить