[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Больше конечно по Mysql
287_08
Доброго времени. Вот код
PHP
if (!empty($proizvoditel)) {    $where .= 'where proizvoditel =  ' $proizvoditel;}  // добавляем к строке вывода производителя? производитель в поиске должен быть выбран полюбому
if (!empty($model)) {    $where .= '  AND model = '$model ;}  // добавляем к строке вывода модель
if (!empty($god_ot)) {    $where .= ' AND  year >= '$god_ot;}  // добавляем к строке вывода год выпуска от
if (!empty($god_do)) {    $where .= ' AND year <= '$god_do;}  // добавляем к строке вывода год выпуска от
if (!empty($cena_ot)) {    $where .= ' AND cena_ot = '$cena_ot;}  // добавляем к строке вывода год выпуска от
if (!empty($cena_do)) {    $where .= ' AND cena_do = '$cena_do;}  // добавляем к строке вывода год выпуска от

Проблема в том, что если пользователь не укажет производителя то получится вот что:
PHP
select from mawina where  AND model 18 AND year >= 1952 AND year <= 1952&n

Можно как-нибудь обьявить поиск по производителю так, чтобы он все выбирал?




Спустя 1 час, 2 минуты, 38 секунд (20.09.2009 - 22:46) sergeiss написал(а):
Цитата (287_08 @ 20.09.2009 - 22:43)
Можно как-нибудь обьявить поиск по производителю так, чтобы он все выбирал?

Делаешь так.

PHP
if (!empty($proizvoditel)) {    $where[] = 'where proizvoditel =  ' $proizvoditel;}  // добавляем к строке вывода производителя? производитель в поиске должен быть выбран полюбому
if (!empty($model)) {    $where[] = '  model = '$model ;}  // добавляем к строке вывода модель
if (!empty($god_ot)) {    $where[] = ' year >= '$god_ot;}  // добавляем к строке вывода год выпуска от
if (!empty($god_do)) {    $where[] = ' year <= '$god_do;}  // добавляем к строке вывода год выпуска от
if (!empty($cena_ot)) {    $where[] = ' cena_ot = '$cena_ot;}  // добавляем к строке вывода год выпуска от
if (!empty($cena_do)) {    $where[] = ' cena_do = '$cena_do;}  // добавляем к строке вывода год выпуска от

Формируем запрос:
PHP
$sql='select * from mawina where ' implode' and '$where);

И в итоге можешь выбирать или не выбирать любые параметры.

Спустя 8 часов, 52 минуты, 34 секунды (21.09.2009 - 07:38) glock18 написал(а):
Цитата
if (!empty($proizvoditel)) {    $where[] = 'where proizvoditel =  ' . $proizvoditel;


where из строки только убери.

Спустя 1 час, 2 минуты, 55 секунд (21.09.2009 - 08:41) sergeiss написал(а):
glock18 - ну да, ты прав smile.gif А я чегой-то не внимательно посмотрел.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.