X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> помогите создать запрос
asbury
asbury
Topic Starter сообщение 27.4.2011, 21:08; Ответить: asbury
Сообщение #1


Народ, пишу поиск, и такой трабл!

$sql = mysql_query('SELECT * FROM prods WHERE close > 0 AND product_name LIKE "%'.addslashes($word).'%" OR product_s_desc LIKE "%'.addslashes($word).'%" OR product_desc LIKE "%'.addslashes($word).'%" ORDER BY id');


Ыроде запрос выглядет корректно, но если я пишу вот так:
AND product_name LIKE "%'.addslashes($word).'%" OR product_s_desc LIKE "%'.addslashes($word).'%"

То условие close > 0 игнорируется :(
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 27.4.2011, 21:16; Ответить: alexdrob
Сообщение #2


по вервых как всегда у вас название полей не в кавычках, а во вторых вы проверьте логику
WHERE close > 0 AND product_name LIKE "%'.addslashes($word).'%" OR product_s_desc LIKE "%'.addslashes($word).'%" OR product_desc LIKE "%'.addslashes($word).'%"


проверится если клос > 0 тогда проверистя product_name LIKE "%'.addslashes($word).'%" если оно вернёт истину то запрос выберет строку, иначе проверится
product_s_desc LIKE "%'.addslashes($word).'%" но клос уже проверятся не будет и так далее
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
asbury
asbury
Topic Starter сообщение 27.4.2011, 21:43; Ответить: asbury
Сообщение #3


это я понял, что в логике ошибка, а как задать корректный запрос, я обратился за помощью))
Ничего умнее как 3 запроса сделать я придумать не могу))
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 27.4.2011, 22:18; Ответить: alexdrob
Сообщение #4


Даю подсказку, скобки задают приоритет :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
asbury
asbury
Topic Starter сообщение 27.4.2011, 22:24; Ответить: asbury
Сообщение #5


$sql = mysql_query('SELECT * FROM prods WHERE (close > 0 AND product_name LIKE "%'.addslashes($word).'%") OR (close > 0 AND product_s_desc LIKE "%'.addslashes($word).'%") OR (close > 0 AND product_desc LIKE "%'.addslashes($word).'%") ORDER BY id');

Упростить это реально както? Или так сойде?)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 27.4.2011, 22:28; Ответить: alexdrob
Сообщение #6


WHERE
`close` > 0 AND (
`product_name` LIKE "%'.addslashes($word).'%" OR `product_s_desc` LIKE "%'.addslashes($word).'%" OR `product_desc` LIKE "%'.addslashes($word).'%"
)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
asbury
asbury
Topic Starter сообщение 27.4.2011, 22:32; Ответить: asbury
Сообщение #7


пасибо)

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Создать видеоканал лучше в ютуб или телеграм?
17 uahomka 3211 Вчера, 11:58
автор: Omaxis
Открытая тема (нет новых ответов) Запрос на бесплатные полезности
7 Tia2 1959 23.3.2024, 11:27
автор: Alexand3r
Открытая тема (нет новых ответов) Как создать бота Телеграм с приемом оплат?
0 rownong27 451 4.3.2024, 0:51
автор: rownong27
Открытая тема (нет новых ответов) Помогите вспомнить рекламного бота Телеграм для обмена рекламой
0 Mixatraider 725 21.2.2024, 23:42
автор: Mixatraider
Открытая тема (нет новых ответов) Хочу создать сайт кино.
12 jreset26 1888 30.1.2024, 0:12
автор: Liudmila


 



RSS Текстовая версия Сейчас: 20.4.2024, 0:12
Дизайн