alexei
ibhacker | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Поиск без учета регистра - Хак ---------------- Выкладываю фикс к search.cgi чтобы не учитывать регистр. Делаем backup и открываем файл search.cgi. Находим следующий кусок кода: Код: for ('TYPE_OF_SEARCH','NAME_SEARCH','POST_SEARCH','FORUMS_TO_SEARCH','action','SEARCH_STRING','REFINE_SEARCH','CUR_TIME','nextforum','start') { next unless defined $_; next if $_ eq 'SEND_MAIL'; $tp = $query->param($_); $tp = &unHTML("$tp"); ${$_} = $tp; } | После него добавляем: Код: if ($SEARCH_STRING) { $SEARCH_STRING =~ tr/a-z/A-Z/; $SEARCH_STRING =~ tr/абвгдеёжзийклмнопрстуфхцчшщъыьэю\377/АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ/; } | Находим эту часть кода: Код: if ($REFINE_SEARCH eq "both_search" || $REFINE_SEARCH eq "topictitle_search") { #1 foreach (@KEYWORDS) { #new1 | И сразу после нее добавляем: Код: $topictitle =~ tr/a-z/A-Z/; $topictitle =~ tr/абвгдеёжзийклмнопрстуфхцчшщъыьэю\377/АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ/; | Далее ищем вот это: Код: foreach (@thddata) { # start foreach 'thd' ($membername, $topictitle, $postipaddress, $showemoticons, $showsignature, $postdate, $post) = split(/\|/,$_); foreach (@KEYWORDS) { #new1 | И сразу после него добавляем: Код: $post =~ tr/a-z/A-Z/; $post =~ tr/абвгдеёжзийклмнопрстуфхцчшщъыьэю\377/АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ/; | Далее находим эту часть кода: Код: if ($REFINE_SEARCH eq "both_search" || $REFINE_SEARCH eq "topictitle_search") { #1 foreach (@KEYWORDS) { #new1 | Сразу после нее добавляем: Код: $startedby =~ tr/a-z/A-Z/; $startedby =~ tr/абвгдеёжзийклмнопрстуфхцчшщъыьэю\377/АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ/; | Находим этот кусок: Код: foreach (@thddata) { # start foreach 'thd' ($membername, $topictitle, $postipaddress, $showemoticons, $showsignature, $postdate, $post) = split(/\|/,$_); foreach (@KEYWORDS) { #new1 | Сразу после него добавляем Код: $membername =~ tr/a-z/A-Z/; $membername =~ tr/абвгдеёжзийклмнопрстуфхцчшщъыьэю\377/АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ/; | --------------------- Необязательная часть --------------------- Находим этот кусок: Код: foreach (@TRUE_RESULTS[$startarray .. $endarray]) { # start foreach loop ($forumid, $topicid, $topictitle, $topicdescription, $forumname, $postdate, $string_returned) = split(/\|/,$_); $postdate = $postdate + ($timedifferencevalue*3600) + ($timezone*3600); $longdate = &longdate("$postdate"); $topicdescription = qq(» $topicdescription) if $topicdescription; $output .= qq( <tr> <td bgcolor=$miscbackone valign=middle> <font face="$font" color=$fontcolormisc size=$dfontsize1> <a href="$boardurl/$threadprog?forum=$forumid&topic=$topicid"><b>$topictitle</b></a><br> <font size=$dfontsize1>$topicdescription </td> <td bgcolor=$miscbackone valign=middle> <font face="$font" color=$fontcolormisc size=$dfontsize1> $ibtxt{'0319'}: <b>$longdate</b> $ibtxt{'2028'} <a href="$boardurl/$forumsprog?forum=$forumid">$forumname</a></font> </td> <td bgcolor=$miscbackone valign=middle> <font face="$font" color=$fontcolormisc size=$dfontsize1> <b>$string_returned</b> </font> </td> </tr> ); undef $topicdescription; } # end foreach | Тут можно сменить дизайн вывода результатов. ---Конец хака----- Добавлено Использовал идею батвы из хака поиска мемберов. | Всего записей: 647 | Зарегистр. 06-07-2001 | Отправлено: 18:23 12-02-2002 | Исправлено: lynx, 03:53 01-07-2003 |
|