|
#!/usr/bin/perl
require "search.cgf";
require "lib.cgi";
&getheader;
$extsearchfile0=@extsearchfile;
$nosearchdir0=@nosearchdir;
&searchform;
$in{'search'} =~ tr/ \t/ /s;
$in{'search'} =~ s/-D /-D/g;
$in{'search'} =~ s/^-D/ -D/g;
$in{'search'} =~ s/\s+/ /g; # замена двойных пробелов на одинарный
# $in{'search'} =~ tr/\(\)a-zA-Z0-9\-\xc0-\xff/ /cs; # прибитие всяческих символов
if ($in{'search'}) {
$in{'search'}=rutextdown($in{'search'});
$in{'search'}=lc($in{'search'});
}
if (!$in{'search'}) {exit;}
elsif ($in{'search'}) {
if ($in{'search'}=~ / /) {
@record=split(/ /,$in{'search'});
$nomer=-1;
$sizemassearch=@record;
for ($i=0;$i<=$sizemassearch;$i++) {
if (length($record[$i])>1) {$nomer+=1;$massearch[$nomer]=$record[$i];}
}
$sizemassearch=$nomer;
}
else {$sizemassearch=0;$massearch[0]=$in{'search'}}
if ($nomer<0) {exit}
}
else {exit}
# сбор директорий
$sdir0=0; $nomer=0;
$bigmassearsh[0]="$startpath";
for ($i=0;$i<=$nomer;$i++) {
opendir (MEMBERDIR, "$bigmassearsh[$i]");
@sdir = readdir(MEMBERDIR); closedir (MEMBERDIR);
$sdir0=-1; $sdir0=@sdir;
for ($l=0;$l<$sdir0;$l++) {
if (-d "$bigmassearsh[$i]/$sdir[$l]" and nosearchindir()) {
$nomer+=1;
$bigmassearsh[$nomer]="$bigmassearsh[$i]/$sdir[$l]";
}
}
}
# сбор названий файлов
@bigmassearsh=sort(@bigmassearsh); $kol=-1;
for ($i=0;$i<=$nomer;$i++) {
opendir (MEMBERDIR, "$bigmassearsh[$i]");
@sdir = readdir(MEMBERDIR); closedir (MEMBERDIR);
$sdir0=-1; $sdir0=@sdir;
for ($l=0;$l<$sdir0;$l++) {
if (!-d "$bigmassearsh[$i]/$sdir[$l]" and yesextsearchfile()) {
$kol+=1; $mashtmlsearch[$kol]="$bigmassearsh[$i]/$sdir[$l]";
}
}
}
# поиск по файлам
$kolerror=0;
print $showlinkst;
$printok=0;
for ($i=0;$i<=$kol;$i++) {
$title = $metatag = $sefile ="";
$sefile="";
if (-r "$mashtmlsearch[$i]") {
open FSCHF, "<$mashtmlsearch[$i]";
if ($mashtmlsearch[$i]=~ /lig-6/i) {
}
@liststr=; $liststr0=@liststr; close FSCHF;
for ($l=0;$l<=$liststr0;$l++) {$liststr[$l]=~ s/\n/ /; $sefile.=$liststr[$l];}
$sefile=~ s/\&/ /g;
# $sefile=~ s/\-/ /g;
$sefile=~ s/\n/ /g;
# выделение названия страницы
$sefile=~ /\([\w,\.,\-,\&,\/,\~,\s,\S,\n]+)\<\/title\>/ig;
$title=$1;
$title0=$title;
$title0 =~ tr/A-Z/a-z/;
$title0 =rutextdown($sefile);
$sefile =~ tr/A-Z/a-z/;
$sefile =rutextdown($sefile);
# выделение метатэга описания страницы для поиска
if($sefile =~ //i) {$metatag = $1;$metatag =~ s/\,/ /g;}
# убивание тэгов
$sefile =~ s///igm; # удаление заголовка
$sefile =~ s/
| ЗНАКОМСТВА
| UKA.ru
| Gossip.ru
|Библиотека бесплатно!
| massovka
| vaticancitystate.ru
| взрывЧАТка
© SANDRA BULLOCK RUSSIAN WORLD 1998 - 2001 webmaster: bullock@mail.ru
|