Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > индексирование документа


Автор: supervladislav 29.8.2006, 18:25
у меня такой вопрос:часто встречаешь ну восновном это на досках объявлений,когда часть объявления при его вводе в строку поиска в поисковике выдает тебе полностью все объявление,тоже самое и с гостевой книгой ))))вопрос такой: как сделать так чтоб все те текстовые документы, которые создает скрипт видел поисковик?  

Автор: faost 29.8.2006, 18:32
Цитата(supervladislav @ 29.8.2006,  18:25)
как сделать так чтоб все те текстовые документы, которые создает скрипт видел поисковик?

Нужно, чтобы на все эти документы были ссылки с проиндексированных страниц

Автор: ewolf 29.8.2006, 19:12
Или искать непосредственно по базе и показывать объявления

Автор: supervladislav 29.8.2006, 19:16
Цитата(faost @ 29.8.2006,  18:32)
Цитата(supervladislav @ 29.8.2006,  18:25)
как сделать так чтоб все те текстовые документы, которые создает скрипт видел поисковик?

Нужно, чтобы на все эти документы были ссылки с проиндексированных страниц

что если это просто текстовый файл из гостевой книги 

Автор: ewolf 29.8.2006, 19:20
тогда хранить в базе имя файла гостевой книги, возможно даже номер строки записи в нем и показывать соответствующий текст

Автор: supervladislav 29.8.2006, 21:01
Цитата(ewolf @ 29.8.2006,  19:20)
тогда хранить в базе имя файла гостевой книги, возможно даже номер строки записи в нем и показывать соответствующий текст

погоди там не мускул а простой текстовый файл)))) что тогда

Автор: ewolf 30.8.2006, 01:36
Тогда конец всему живому smile

Значит результат индексации сохранять в текстовом файле. Как самый простой вариант: весь результат индексации записывать в массив, а потом его сериализовать и сохранять в файл. Это медленно, но просто.

Пример:

Код


// Вот тут процесс индексации, который получает, скажем данные из разных файлов и сохраняет их в массив в таком виде:

$array = array( 'text' => #здесь текст, который был проидексирован#,
                         'file' => #здесь имя файла, из которого мы это проиндексировали#,
                         'type' => #ну, можно еще сохранять тип файл, типа там это гостевая книга или форум или еще что...#
                       );

// Сериализуем
$data = serialize($array);

// Сохраняем в файл индекса

$f = fopen('index.txt', 'w');
fwrite($f, $data);
fclose($f);

///*********************
// А вот поиск

$data = file_get_contents('index.txt');
$array = unserialize($data);

// Ну и сам поиск
foreach($array as $value)
{
  if( strpos($value['text'], $search) )
  {
     // ага, что-то нашли, показываем. тут всякие echo  и т.п.
  }
}



ну вот. Это конечно, еще раз скажу, медленно, зато просто.
Можно и какой-нить свой формат индекса придумать.

Еще данный способ подходит, если поиск производится по разным источникам, а если источник один (скажем гостевуха), то лучше искать прямо по ней.

Автор: supervladislav 30.8.2006, 04:57
Цитата(ewolf @ 30.8.2006,  01:36)
Тогда конец всему живому smile

Значит результат индексации сохранять в текстовом файле. Как самый простой вариант: весь результат индексации записывать в массив, а потом его сериализовать и сохранять в файл. Это медленно, но просто.

Пример:

Код


// Вот тут процесс индексации, который получает, скажем данные из разных файлов и сохраняет их в массив в таком виде:

$array = array( 'text' => #здесь текст, который был проидексирован#,
                         'file' => #здесь имя файла, из которого мы это проиндексировали#,
                         'type' => #ну, можно еще сохранять тип файл, типа там это гостевая книга или форум или еще что...#
                       );

// Сериализуем
$data = serialize($array);

// Сохраняем в файл индекса

$f = fopen('index.txt', 'w');
fwrite($f, $data);
fclose($f);

///*********************
// А вот поиск

$data = file_get_contents('index.txt');
$array = unserialize($data);

// Ну и сам поиск
foreach($array as $value)
{
  if( strpos($value['text'], $search) )
  {
     // ага, что-то нашли, показываем. тут всякие echo  и т.п.
  }
}



ну вот. Это конечно, еще раз скажу, медленно, зато просто.
Можно и какой-нить свой формат индекса придумать.

Еще данный способ подходит, если поиск производится по разным источникам, а если источник один (скажем гостевуха), то лучше искать прямо по ней.

ты мне тут прямо целую поисковую систему придложил ,я просто хочу чтоб яндекс и рамблер нормально видели созданные скриптом страницв вот и все 

Автор: cyberface 30.8.2006, 07:29
Как говорят падонки, "ржунимагу". Такое чувство, что автор топика даже не знает что такое поисковые машины и как с ними работать.
2 Автор
Что бы поисковик видел твои страницы, тебе надо зарегистрировать сайт в поисковой системе.

Автор: supervladislav 5.9.2006, 07:34
Цитата(cyberface @ 30.8.2006,  07:29)
Как говорят падонки, "ржунимагу". Такое чувство, что автор топика даже не знает что такое поисковые машины и как с ними работать.
2 Автор
Что бы поисковик видел твои страницы, тебе надо зарегистрировать сайт в поисковой системе.

представь себе знаю

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)