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');