";
// Помощник посетителя BEGIN
$navhelp = " ";
$navhelp=$navhelp."
Помощник посетителя
";
$navhelp=$navhelp."
Текущая
Текущая страница
Инфо-партнеры: Сотрудничество с oborud.info
Выше на этой странице, вы можете ознакомиться с ссылками на специализированные ресурсы по различным отраслям и направлениям.
Вопрос-ответ
Вопрос-ответ
Если Вам не удалось найти на страницах сайта искомой информации, или возникли другие вопросы – оформите заявку, укажите вашу потребность и получите бесплатную консультацию специалиста
";
$title=ucfirst(trim($name)). " | OBORUD.INFO - портал оборудования";
echo $text;
}
$text=$head.$s.$navhelp;
echo $text;
}
// Если поиск по ссылкам BEGIN
if (isset($r))
{
$var = @$_GET['v'];
// Теперь каленым железом выжжем все "ненормальные" символы.
$var = preg_replace("/[^-\^\w\x7F-\xFF\s]/", " ", $var);
$trimmed = trim($var); //trim whitespace from the stored variable
// Первым делом надо порезать ручками строку.
$trimmed = substr($trimmed, 0, 54);
function sw (&$item1, $key) { if (strlen($item1)<3) $item1=""; }
// разбиваем на слова, убираем слова, короче 3х букв
$trimmed=explode (" ", $trimmed);
// вот и функция пригодилась...
array_walk ($trimmed, 'sw');
// убираем повторяющиеся слова
$trimmed=array_unique ($trimmed);
// извлечение корня из слова.
//require "stemmer.php";
//foreach ($trimmed as $value) {
//$stemmer = new Lingua_Stem_Ru();
//$trimmed_stemmer[] = $stemmer->stem_word($value);
// }
// соединяем слова
//if (strlen($var)>5) { $trimmed=implode (" ", $trimmed_stemmer); }
//else $trimmed=implode (" ", $trimmed);
$trimmed=implode (" ", $trimmed);
// По идее, нельзя давать пользователю возможности искать по слишком коротким словам
// кроме всего прочего, это сильно загружает сервер. Итак, разрешим искать только
// по словам, которые длиннее двух букв (если ограничение больше, надо заменить
// "{1,2}" на "{1, кол-во символов}").
$trimmed = trim(ereg_replace("/\s(\S{1,2})\s/", " ", ereg_replace(" +", " "," $trimmed ")));
// А после замены плохих слов - надо сжать двойные пробелы (они были сделаны
// специально для корректного поиска коротких слов).
$trimmed = ereg_replace(" +", " ", $trimmed);
$trimmed = strtolower($trimmed); // убираем заглавные буквы
{ if (strlen($trimmed)<4) $trimmed=""; }
// если слово меньше 4 символов то игнорируем
$rubs_zapros=" AND (description like '%". str_replace(" ", "%' AND description LIKE '%", $trimmed). "%' OR name like '%". str_replace(" ", "%' OR name LIKE '%", $trimmed). "%')";
if ($r > 0) { $rubs_zaprosr =" subrubs=$r "; }
if ($r == 0) { $rubs_zaprosr =" subrubs>0"; }
$sql="SELECT * from links2 where $rubs_zaprosr $rubs_zapros order by prio ASC ";
$q=$db->query($sql);
# форматируем вывод результатов
$s="";$n=0;
while ($db->next_record())
{
$rubs=$db->Record['rubs'];
$rubs0 = "$_NewsRubrica[$rubs]";
$subrubs=$db->Record['subrubs'];
$rubs2 = "$_NewsRubrica2[$subrubs]";
$name=$db->Record['name'];
$prio=$db->Record['prio'];
$id=$db->Record['id'];
$pubdate=date("d.m.Y",$db->Record["pubdate"]);
$link=$db->Record['link'];
$title=$db->Record['title'];
$description=$db->Record['description'];
$icon=$db->Record['icon'];
$notes=$db->Record['notes'];
$s=$s."
".$title." ".$description."
\n";
}
$sql="SELECT count(id) as n from links2 where $rubs_zaprosr $rubs_zapros order by prio ASC ";
$q=$db->query($sql);
if ($db->next_record()) $n=$db->Record["n"];
// echo $n;
if ($n<1) { $s = "
Системное сообщение: Запрос не принес результатов!
"; }
if (strlen($trimmed)<4) { $s = "Ничего не найдено, поисковый запрос должен составлять не менее четырех символов"; }
// если вызван поиск - подсветка поискового запроса
if (isset($v)) {
include_once ("../h.php");
$s = highlighter_s($s, $trimmed);
}
$text=$head.$s.$navhelp;
echo $text;
$title="OBORUD.INFO - портал оборудования";
}
// Если поиск по ссылкам END
include "_bottom.php";
?>