[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Полнотекстовый поиск
freed-master
Написал код:
Код
<form action="" method="post"><p>Поиск по сайту: </p>
<input name="query" type="text" id="entry" value=""/>
<input type="image" src="../images/search.png"/>
</form>
<?php
include_once("config.php");

if (isset($_POST['search_x']))
{
$query = isset($_POST['query'])?$_POST['query']:null;
$result = mysql_query("SELECT * FROM `wares` WHERE MATCH (`wares`, `description`, `article`) AGAINST '".$query."'") or die ("Ошибка запроса: " . mysql_error());
while($row = mysql_fetch_assoc($result))
{
echo htmlspecialchars($row["ware"]);
echo htmlspecialchars($row["description"]);
}
}
?>

Но почему то ничего не происходит...



Спустя 1 час, 24 минуты, 43 секунды (30.03.2009 - 09:41) Kuliev написал(а):
freed-master
Может стоит AGAINST '".$query."' взять в скобки ведь это функция
AGAINST ('".$query."')

Спустя 10 часов, 10 минут, 52 секунды (30.03.2009 - 19:52) freed-master написал(а):
Все равно не работает...

Спустя 1 час, 27 минут, 31 секунда (30.03.2009 - 21:19) anonymouse написал(а):
PHP
$query=mysql_query("SELECT * FROM `articles` WHERE `name` like '%$search_t%';");


А ты попробуй воспользоваться вот этим примером ) разницы не вижу...

Спустя 9 часов, 59 минут, 33 секунды (31.03.2009 - 07:19) Sylex написал(а):
Цитата (anonymouse @ 31.03.2009 - 00:19)
А ты попробуй воспользоваться вот этим примером ) разницы не вижу...

конструкция MATCH AGAINST использует индекс - это fulltext поиск, и соответственно как бы быстрее, и ищет только слова (в этом есть преимущество), а LIKE всю таблицу "обшаривает" smile.gif хотя тож можт быстро, вот, кстати, интересная статья:
http://habrahabr.ru/blogs/mysql/25646/

Спустя 8 часов, 24 минуты, 27 секунд (31.03.2009 - 15:43) freed-master написал(а):
Просто небыло указано имя кнопки...

Но теперь выдает:
Цитата
Can't find FULLTEXT index matching the column list


Поля таблицы заданы как полн.текст

???

Спустя 11 минут, 44 секунды (31.03.2009 - 15:55) FatCat написал(а):
SQL
ALTER TABLE `имя_таблицы` ADD FULLTEXT (
`имя_столбца`
)

Спустя 1 час, 11 минут, 44 секунды (1.04.2009 - 17:07) freed-master написал(а):
FatCat, это я сделал сразу.

Но че то не как...

Спустя 13 часов, 42 минуты, 46 секунд (2.04.2009 - 06:50) Sylex написал(а):
freed-master
покажи структуру таблицы и запрос

Спустя 12 часов, 6 минут, 29 секунд (2.04.2009 - 18:56) freed-master написал(а):
Таблица:
Код
CREATE TABLE `wares` (
 `code` int(11) NOT NULL default '0',
 `price` text,
 `description` text NOT NULL,
 `pr_n` text NOT NULL,
 `pr_c` text NOT NULL,
 `article` text NOT NULL,
 `type` text NOT NULL,
 `ware` text NOT NULL,
 PRIMARY KEY  (`code`),
 FULLTEXT KEY `description` (`description`,`article`,`ware`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;

Запрос:
Код
<?php
include_once("config.php");

if (isset($_POST['search_x']))
{
$query = isset($_POST['query'])?$_POST['query']:null;
$result = mysql_query("SELECT * FROM `wares` WHERE MATCH (`ware`, `description`, `article`) AGAINST ('".$query."') ") or die ("Ошибка запроса: " . mysql_error());
while($row = mysql_fetch_assoc($result))
{
echo htmlspecialchars($row["ware"]);
echo htmlspecialchars($row["description"]);
}
}
?>
<form action="?" method="post"><p>Поиск по сайту: </p>
<input name="query" type="text" value=""/>
<input type="image" name="search" src="../images/search.png"/>
</form>

Спустя 2 года, 25 дней, 7 часов, 1 минута, 43 секунды (28.04.2011 - 01:58) Guest написал(а):
`description` (`description`,`article`,`ware`)

MATCH (`ware`, `description`, `article`)

Спустя 9 дней, 8 часов, 37 минут, 4 секунды (7.05.2011 - 10:35) Dr.Mars написал(а):
http://sphinxsearch.com/ - хорошее решение


_____________
Всем, кто заинтересован, могу помочь начать зарабатывать на forex.
Пишите в личку или на e-mail: flash-dirt@yandex.ru
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.