![]() |
Показаны 55 сообщений на этой странице |
Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- Установка и настройка (http://netadmin.ws/forum/forumdisplay.php?forumid=28)
-- Active Classifieds - Переписывать Search Движок? (http://netadmin.ws/forum/showthread.php?threadid=1417)
Active Classifieds - Переписывать Search Движок?
Если кому-то знакома эта проблема - буду рад за совет или помощь.
Перевод уже почти сделал полностью, а вот две функции - поиск по объявлениям и, соответственно, search agent (автоуведомление на мэйл о публикации кем-то подходящего под мои критерии объявления) не работают только потому что не понимают кириллицу. Обидно, емае. Всего один несложный скрипт, который за это отвечает.
Помогите плииз, а я переведенные файлы могу скинуть!
Заранее спасибо
http://www.activewebsuite.com/cgi-b...classifieds.cgi
всмысле не работают? Мыла приходят в корявой кодировке?
__________________
Всегда есть решение.
Нет, я не об этом. Хотя мыла и приходят в KOI-R. Ну это бог с ним.
Я говорю о поиске опубликованных объявлений. Он вообще ничего не ищет, чтобы ты не ввелна русском языке. Если же есть объявы на англ. - то все ок. Сам разработчик признался в форуме, что тут он не доработал немного - все работает только для латиницы...
Вот я и подумал, интегрировать какую-то другую поисковую систему в набор скриптов activeclassifieds - это гимор, вероятно - потому что его собственная search система предполагает поиск по keywords, можно также выбрать объявы с фотками и т.п.
Так что он сказал, что нужно каким-то образом переписывать файлы, связанные с поиском в этой системе объявлений.
Не радостно все это
по идее все должно работать, кодировка страницы должна быть в win-1251.
__________________
Всегда есть решение.
Дело, как я понимаю не в кодировке страницы, а в том, что в этих перл скриптах надо каким-то образом указать им (прописать) русские буквы, чтобы он (поисковый движок) их индексировал и распознавал.
Могу прислать скрипт, отвечающий как раз за поиск, или еще можно сделать поиск НЕ по ключевым словам каким-то образом, а, например, по объявлениям только с фото..
Просто есть некая база данных, в которой есть информация о пользователях и все объявления (естественно, публикуемые людьми на русском языке), к ней есть свой путь, естественно....
Вот можно было бы присобачить сюда какой-то другой движок....но я не настолько хорошо разбираюсь в перле, вот и мучаюсь
слушай ты если открывешь файлы с данными и видищь там русский текст, то значит все нормально.
__________________
Всегда есть решение.
короче, ладно. видно мы говорим о разных вещах.
покопайся в скриптах, попытайся их установить и сам все увидишь...
нет. могу сказать, что в версии "Isclassifieds" такого трабла не было, потому что разработчик по нашему заказу писал (дописывал) все основные скрипты. А в этих activeclassifieds люди, по ходу, не очень дальновидные...
А по поводу языков привожу тебе его ответ на его же форуме по этой теме. Там девочка одна переводила всю эту лабуду на иврит:
---------------------------------
ее вопрос:
I translate the classified to Hebrew.
When I am Searching For Listings it's only serch for words in English, is there anyway I can fix it to search also Hebrew keywords?
его ответ:
Sorry but the Hebrew language uses characters which are not compatible with a standard regrex expression used in the search program.
Так вот весь вопрос в том, что это за загадочный "standard regrex expression " ???
File: classifieds.cgi
use locale;
use POSIX qw(locale_h);
#setlocale(LC_CTYPE,"Russian_Russia.1251");
setlocale(LC_CTYPE, "ru_RU.CP1251");
Ессно эта локаль должна быть на сервере.
Для кои-8 все проще, как правило она всегда есть и ее надо просто указать. тогда русские буквы не будут считаться служебными символами и будут "compatible with a standard regrex expression"
Огромное спасибо! А куда конкретно в файле classifieds.cgi это необходимо вставить? И что значит, что локаль должна быть на сервере? Как проверить, есть ли она реально?
Заранее извиняюсь за возможную тупость в формулировании вопроса...
вставь в main_search.pl в функцию sub any_search и sub all_search
__________________
Всегда есть решение.
не работает
в виндовзе тестируешь?
__________________
Всегда есть решение.
на сервере в unix.
файлы main_search.pl и classifieds.cgi
прислать?
не не надо, я поробовал на винде, сделал так
sub any_search {
use locale;
use POSIX qw(locale_h);
#setlocale(LC_CTYPE,"Russian_Russia.1251");
setlocale(LC_CTYPE, "windows");
и все заработало, если у тебя не работает то значит локаль для win-1251 не установлена, либо назывется по другому, спроси у своего админа может подскажет как называется, либо если ее нет чтобы поставил.
__________________
Всегда есть решение.
а вообще мне кажется что лучше регулярку поменять, так как локаль вешь довольнотаки непредсказуемая. да и есть много скриптов на перле которые прекрасно ищут по русски и без использования локалей.
__________________
Всегда есть решение.
нет. это все понятно. только куда ты эту часть кода вставил-то? в какой конкретно файл скрипта и (или) вместо чего? и еще. как профессионально спросить у админа про эту локаль? что это такое?
еще раз прошу понять меня правильно, я не большой профи в перле...
а ты в сети тестируешь? можно адрес посмотреть?
нет на локалке
__________________
Всегда есть решение.
смотри http://netadmin.ws/forum/showthread...d=9037#post9037
у админа спроси как называется локаль для win-1251
__________________
Всегда есть решение.
ну в общем я не знаю, что мне делать. ((
могу только скрипты прислать, чтобы ты как профессионал посмотрел....
послал следующий вопрос админу:
Здравствуйте.
Есть к Вам один вопрос. Я настраиваю некие perl скрипты и мне необходимо знать как называется локаль для win-1251 ?
а что мне скрипт, он у меня есть
__________________
Всегда есть решение.
тогда может пришлешь мне свой вариант этих скриптов? я их протестирую, а то может я че-то не туда вставляю все время....
лови файл, classifieds/library/main_search.pl
__________________
Всегда есть решение.
нет. к огромному сожалению не работает.
а какие еще движки можно интегрировать туда?
будет работать если локаль правильно выставить.
__________________
Всегда есть решение.
<b>POLO</b>, Узнал все.
1. Локаль называется ru_RU.CP1251
это хорошо или плохо? Где и в каком скрипте конкретно прописать этот чудесный факт? 
2. У меня сегодня появились все файлы прошлой системы
(isclassifieds), где движок поисковый работал ОК. Посмотреть хочешь?
нет спасибо, смотрел файл что я тебе выложил, так вот найди в нем строки setlocale(LC_CTYPE, "windows");, это строка четыре раза повторяется, так вот замени в ней windows на ru_RU.CP1251.
__________________
Всегда есть решение.
и все-таки, когда ты тестировал - ты давал объявление в системе на русском языке, а потом делал поиск по русским словам??? И что, система находила твое русскоязычное объявление????
да
__________________
Всегда есть решение.
тогда я вообще в растерянности. полностью сделал то, что ты сказал - НО....можешь посмотреть результат
http://www.50.ru/cgi-bin/suite/clas...ced_search_form
выложи свой файл сюда, переименуй его в *.txt.
__________________
Всегда есть решение.
выкладываю сюда, но нужен ли только main_search.pl или classifieds.cgi тоже?
ну если локаль правельна, то проблем не должно быть, я не знаю почему не находит. Ладно я потом посмотрю как еще можно исправить, кстати дай тот файл что ты говорил где все работало.
__________________
Всегда есть решение.
даю. но если его внедрить в Ð_ТУ систему - работать не будет....хотя....
Ну что, кто реально поможет?
Общий смысл такой, если на серваке Lunix , то русская локаль с 1251 кодировкой работает без проблем(но ее надо доставлять как правило). А вот если фря, то то возможен нехилый секс. У меня оно по крайней мере заработало не сразу и с глюками. Деталей увы не помню, ставилось года полтора назад.
С коями все должно сразу и нормально работать (и работало) , но мне надо было что бы все было в 1251.
Поисковый движок там дебильный рассчитанный на eng-юзеров только и без установки правильной локали ищет только по латинице.
И еще проверять надо на сервере, проверка под виндой ничего не даст. там эта локаль есть по дефолту (как не быть то
)
Active Classifieds - Ну Вот, ПриходитсЯ Покупать За $ Доработку Скрипта
а жаль....
кстати я тебе сегодня решение одно писал, так у меня винда глюкнула, и комп стал перезагружаться.
__________________
Всегда есть решение.
Привет Поло. ну и как решение? что-нибудь продвинулось?
дело в том что там в регулярном выражении используються модификаторы /b что указывют на границу слова, что перл не понимает для русских слов без локали, я убрал эти модификаторы и все заработало.
__________________
Всегда есть решение.
и локали уже не 4 раза повторяются, а только в PERFORM AN ADVANCED SEARCH ?
локали там уже роли не играют, я просто их не убрал, можешь удалить все что к ним относится, ты мне скажи это сейчас у тебя работает?
__________________
Всегда есть решение.
мне нужно время, чтобы проверить.
а скажи, вот там у тебя указано так:
sub advanced_search {
use locale;
use POSIX qw(locale_h);
#setlocale(LC_CTYPE,"Russian_Russia.1251");
setlocale(LC_CTYPE, "windows");
мне вместо windows надо ввести название моей локали?
удали
use locale;
use POSIX qw(locale_h);
#setlocale(LC_CTYPE,"Russian_Russia.1251");
setlocale(LC_CTYPE, "windows");
__________________
Всегда есть решение.
блин, не понял, что удалить-то? можешь объяснить мне, как будто мне 2 года??
а то гиморно постоянно мессаги кидать из-за простых вопросов!

__________________
Всегда есть решение.
почему удалить-то?
а вот ты попробуй если работает а потом задавай вопросы.
__________________
Всегда есть решение.
в общем, ни хера я не понял. прикол вероятно для тебя, вот так вот загадками разговаривать да? тем более, зная то, что я уже сто раз повторял, что я не программер, еб....
мне вообще не до шуток, уже полторы недели, как мудак сижу копошусь в этих закорючках перловых....(((((((((((((
mak какими загадками я говорю, мало того что я теряю свое время занимаясь твоими проблемами, так ты еще и не доволен еб...
Я тебе выложил полностью рабочий файл, возьми и замени его и получишь рабочий поиск, более того я говорил что и почему не работает.
__________________
Всегда есть решение.
спасибо.
Поло, извини пожалуйста за резкость. Все отлично заработало!!
Я просто с этим со всем долго долбался, уже почти отчаялся...
Ты не мог бы мне написать или зайти в аську 149067143 ?
Мне срочно нужно с тобой поговорить. Дело может тебя заинтересовать.
Поло. есть еще одна проблема не решенная с этим поиском. Поисковый агент. в файле main_autonotify.pl тоже где-то надо прописать так, чтобы он понимал кириллицу. этот файл связан с main_search.pl
Где это можно сделать?
| Формат времени GMT. Текущее время 13:58. | Показаны 55 сообщений на этой странице |
Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.