Задать вопрос
@sawoyen

Как реализовать корректный поиск в БД?

Добрый день. Вопрос следующий: Есть необходимость создать некое подобие умного поиска. Склонился к регулярным выражениям. В форме поиска пользователь вводит любое слово/строку. Запрос к БД имеет вид:

$query ="SELECT * 
FROM main_table 
WHERE (name LIKE '%" .$word. "%') OR (message LIKE '%" .$word. "%') OR (city LIKE '%" .$word. "%') OR (tel LIKE'%" .$word. "%') OR (email LIKE '%" .$word. "%') OR (homepage LIKE '%" .$word. "%') OR (adr LIKE '%" .$word. "%') 
ORDER by name";

Но, как Вы и видите, проблема сего запроса очевидна: если в форму поиска ввести, условно говоря название и адрес, ничего не получится.
Как устранить этот нюанс? Заранее спасибо
  • Вопрос задан
  • 102 просмотра
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
@backender_ru
https://backender.ru/
sphinx?
Ответ написан
Комментировать
@sawoyen Автор вопроса
Пробовал заменить LIKE на RLIKE, однако поиск все также остался некорректным
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы