Forum Webscript.Ru

Программирование => PHP => Тема начата: evgkuz от 11 Июня 2002, 16:02:11

Название: Продвинутый поиск
Отправлено: evgkuz от 11 Июня 2002, 16:02:11
Если использовать:
$search = "яблоко";
$r=mysql_query("SELECT * FROM news WHERE name LIKE \'%$search%\'");

То я не смогу получить новости на слово "яблочный".
Как это можно сделать с помощью PHP4+MySQL
Название: Продвинутый поиск
Отправлено: Flash от 11 Июня 2002, 17:48:46
А никак. Компьютер тебе не человек, он не сможет опознать корень этого слова и найти однокоренные слова. Можно конечно поизвращаться выбирая первые 4-5 букв из слова, но это опятьже частный случай!
Название: Продвинутый поиск
Отправлено: Ardzhan от 11 Июня 2002, 20:23:11
Обрезай последние несколько букв, например. Так делает поиск на http://bankreferatov.ru (http://www.bankreferatov.ru)
Можно оттяпать и первые две-три буквы...
А идеального варианта...
Вот вдогонку ссылка... Там на перле, но тем не менее...
http://www.risearch.org/rus/rumor/index.html
Название: Продвинутый поиск
Отправлено: Stek от 11 Июня 2002, 21:15:18
Ставить поисковую машину.
Название: Продвинутый поиск
Отправлено: Меняздесьдавнонет от 11 Июня 2002, 23:06:57
Тебе для чего?
Если для поиска, который вводит юзер, то так и напиши ему - если хотите искать однокоренные слова, то указывайте корень и звездочку, например ябл*
а сам заменяй звезду на процент, и добавляй пробел спереди.
\' $words[$i]%\'
Название: Продвинутый поиск
Отправлено: Flash от 12 Июня 2002, 03:28:26
RomikChef
Точно-точно, это будет самый выгодный и простой вариант. А тебе evgkuz большего для поиска новостей и не надо. Имхо.
Название: Продвинутый поиск
Отправлено: Stek от 12 Июня 2002, 10:18:02
RomikChef
А ты представь себе, как будет выглядеть форма поиска с надписью

Цитировать
если хотите искать однокоренные слова, то указывайте корень и звездочку, например ябл*


Я где то видел сайт, в котором в качестве хелпа по поиску был довольно неплохо расписан синтаксис по регулярным выражениям :)