Только что-бы искало по совпадению и в названий и в описании и адрес.Что б небыло такого что ищет только по названию или описанию.
Edelina, сам код поиска, нужно подключение к базе, шапка с нужной кодировкой и прочее
$search = isset($_POST['query']) ? trim($_POST['query']) : '';
echo '<div>Поиск</div><div><form action="" method="post">'
. '<div><input type="text" value="' . $search . '" name="query" /></div>'
. '<div><input type="submit" value="Искать" name="submit" /></div>'
. '</form></div>';
if ($search) {
$query = mysql_real_escape_string($search);
$sql = mysql_query("select *, match (`name`, `description`, `adress`) against ('$query' in boolean mode) as `rel` from `se` where match (`name`, `description`, `adress`) against ('$query' in boolean mode) > 0 group by `name` order by `rel` desc");
$total = @mysql_num_rows($sql);
if ($total) {
echo '<div>Всего найдено: ' . $total . '</div>';
while($row = mysql_fetch_assoc($sql)) {
echo '<div>Релевантность: ' . round($row['rel'], 2) . '</div>'
. '<div>' . $row['name'] . '</div>'
. '<div>' . $row['description'] . '</div>'
. '<div>' . $row['adress'] . '</div><hr />';
}
} else {
echo '<div>Ничего не найдено</div>';
}
сама таблица для поиска
CREATE TABLE IF NOT EXISTS `test` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` text NOT NULL,
`description` text NOT NULL,
`adress` text NOT NULL,
PRIMARY KEY (`id`),
FULLTEXT KEY `name` (`name`),
FULLTEXT KEY `description` (`description`),
FULLTEXT KEY `adress` (`adress`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
INSERT INTO `test` (`name`, `description`, `adress`) VALUES
('Магазин дестких игрушек', 'в магазине в наличии много всяких игрушек', 'Ленина 14'),
('склад автозапчастей', 'есть всякого рода запчасти на любые автомобили, колеса, диски, бампера', 'Энгельса 18'),
('мэрия города', 'сидят злые дядьки в костюмах', 'Московский проспект 1'),
('Магазин женской одежды', 'барахло, туфли , шляпки', 'Ленина 24');
Koenig, Если не трудно можеш выложить в txt чтоб скачать можно было.Спасибо.
Koenig, Спасибо тебе!Буду дальше теперь себя мучать.Если что,обращаться можно будет к тебе? Я не профи но будем пробовать.
Edelina, по возможности поможем, пиши на форум
когда дамп делал, таблицу переименовал, так что в запросе поменять надо имя
from `se` на from `test`