Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Система поиска по тегам
Форумы портала PHP.SU » PHP » Программирование на PHP » Система поиска по тегам

Страниц (1): [1]
 

1. Onia - 02 Апреля, 2008 - 16:01:18 - перейти к сообщению
В блогах и на многих сайтах, новостных порталах, есть такая система как поиск по тегам, пользователь пишет в своей статье через запятую ключевые слова, потом они выводятся как ссылки, нажимаешь и выводятся все статьи, где было указанно такое же слово.
Я с таким не сталкивалась, и мне нужна помощь, может быть, где-то примерно описывается как это делается. Какие функции использовать?
Спасибо
2. EuGen - 02 Апреля, 2008 - 16:07:48 - перейти к сообщению
Ну, с каждой статьей связывается список ключевых слов, через БД чаще всего.
Например, есть таблица
PHP:
скопировать код в буфер обмена
  1.  
  2. articles:
  3.  
  4. article_id
  5. content
  6.  

Можно связать ее с таблицей ключевых слов:

И потом делать поиск по введенным словам:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. //$_POST['words']-массив введенных слов
  4. $strIn=join(",",$_POST['words'])
  5. $result=mysql_query("SELECT DISTINCT article_id FROM codewords WHERE word IN ($strIn)");
  6. //...
  7. ?>
  8.  

Простейший вариант, но вообще говоря, индексирование - целая наука.
3. Onia - 02 Апреля, 2008 - 16:36:23 - перейти к сообщению
Спасибо! примерно поняла, как делать надо.

 

Powered by ExBB FM 1.0 RC1