{'_path'}//g; $url =~ s/\%60/\`/g; my $text = system.param("text"); system.out("rubric_name"); $text = $self->win1251_to_utf8($text) if ($ENV{HTTP_REFERER} =~ /forum/); print "Результаты поиска '$text'"; system.katalog.showcrumb($url); system.out("rubric_list"); system.content.render; system.out("content"); my $search1 = $text; my $search = $text; $search1=~ s/\x20//g; if ($search1 eq "") { #print "Задан пустой поисковый запрос"; } else{ my $words = $self->utf8_to_win1251($search); my @wrd = split(" ",$words); my @wrd1 = @wrd; my $sql = ""; my $first = $wrd[0]; for(my $i=0;$i<=$#wrd;$i++) { $wrd1[$i]=~ s/[\-\+\*]//g; if ($wrd[$i] =~ /^\+/) { $wrd[$i]=" AND search_word LIKE '%".substr($wrd[$i],1,length($wrd[$i])-1)."%'"." OR search_title LIKE '%".substr($wrd[$i],1,length($wrd[$i])-1)."%'"; } else{ if ($wrd[$i] =~ /^\-/) { $wrd[$i]=" AND search_word NOT LIKE '%".substr($wrd[$i],1,length($wrd[$i])-1)."%'"." OR search_title NOT LIKE '%".substr($wrd[$i],1,length($wrd[$i])-1)."%'"; } else{ $wrd[$i]=" OR search_word LIKE '%$wrd[$i]%'"." OR search_title LIKE '%$wrd[$i]%'"; } } $sql.=$wrd[$i]; } $sql =~ s/^\x20AND//ig; $sql =~ s/^\x20OR//ig; my $cms; my $index = $dbh->query("SELECT search_title,search_url FROM search_table WHERE ($sql) LIMIT 0,50"); while(my %index_ = $index->fetchhash) { my $text = $index_{search_word}; foreach(@wrd1){$text=~ s/$_/\$_\<\/b\>/ig;} $text=$self->windows1251($text); $index_{search_title}=$self->windows1251($index_{search_title}); $cms.="
  • $index_{search_title}
    $text

    "; } if ($cms ne "") { print "
      $cms
    "; } else{ print "Извините, ничего не найдено"; } } ?>