- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
добрый день. есть база данных, в ней таблица, в таблице в поле opisanie большое предложение, надо найти поиском фразу из нескольких слов, такм образом. если хоть одно слово из фразы совпадает, то этот результат засчитывается. я сейчас пользуюсь таким способом: разрезаю фразу на отдельные слова, потом ищу каждое слово по всей таблице, но в таком случае очень долго ищет:( каким образом можно реализовать чтоб не разбивать слова и делать проход по таблице всего один раз???
Вот неплохая статья на заданную тему, + учет опечаток, "возможо вы искали" и т.д.
Вообщем показать было бы легче, чем объяснить. 😂 Я делал так:
Форма поиска.
<input name="search" type="text" style="width:480px; border:1px solid #357C00;">
<input name="submit_s" type="submit" value="Найти"></form>
Кусок search.php
if (isset($_POST['submit_s']))
{
$submit_s = $_POST['submit_s'];
}
if (isset($_POST['search']))
{
$search = $_POST['search'];
}
if (isset($submit_s))
{
if (empty($search) or strlen($search) < 3)
{
exit ("<div align='center' style='padding:5px;'>Поисковый запрос не введен, либо он менее 3-х символов.<br><a href='javascript:history.go(-1);'>← Назад</a></div>");
}
$search = trim($search);
$search = stripslashes($search);
$search = htmlspecialchars($search);
}
else
{
exit ("<div align='center' style='padding:5px;'>Вы обратились к поиску без необходимых параметров.<br><a href='javascript:history.go(-1);'>← Назад</a></div>");
}
Сам запрос выглядит так.
И еще в phpmyadmin для opisanie добавь FULLTEXT.
FULLTEXT KEY `opisanie` (`opisanie`)
)
Пример работы у меня в подписи, только там ищет по названию.
k0t, что делает эта операция?
зачем она нужна???
(
FULLTEXT KEY `opisanie` (`opisanie`)
)
k0t, что делает эта операция?
зачем она нужна???
(
FULLTEXT KEY `opisanie` (`opisanie`)
)
Создает специальный индекс на данное поле. Без него MATCH работать не будет.
вот статья не плохая http://www.mysql.ru/docs/man/Fulltext_Search.html
🚬
а если я хочу искать в двух полях сразу, тоесть ещё "nazva" надо сделать тоже fulltext для этого поля, а в запросе как исправить?
k0t, что делает эта операция?
зачем она нужна???
(
FULLTEXT KEY `opisanie` (`opisanie`)
)
включает для данного поля полнотекстовый поиск, который какраз и заточен на поиск текстовых вариаций.