Уважаемые коллеги! Помогите разрешить один вопрос.
Тестирую версию 2.0.17 Все вроде неплохо. Но вдруг выяснил, что не работает правильно функция "упорядочить по имени пользователя" на русском языке. Вместо правильного расположения по алфавиту выдает: Березин, Фурцев, Андреев, Сидоров. Тоже самое и по местонахождению. (Если фамилии и места на английском, то все нормально.) Никаких модов не ставил. Понимаю, что что-то , видимо, с перекодировкой связано, но дальше нет опыта. Подозрение, что вопрос может быть в том, что, как мне писал хостер при создании БД, она работает в KOI8-R. (Web Сервер Russian Apache - 1.3.33 Сервера Баз данных MySQL - 4.0.18. PHP - 4.3.9) А все на форуме крутится в Win1251. М.б. где-то сдесь "собака зарыта". Кто подскажет?
(Нашел на форуме несколько тем на похожую тему, но никаких решений для себя не увидел, так то, что описывали уже пробовал).
Все опробовал, но ни что не помогло. Помогите, гуру!
-
- phpBB 1.2.1
- Сообщения: 27
- Стаж: 19 лет 8 месяцев
Все опробовал, но ни что не помогло. Помогите, гуру!
Последний раз редактировалось andrew_pp 29.08.2005 18:52, всего редактировалось 2 раза.
-
- phpBB 2.0.5
- Сообщения: 477
- Стаж: 21 год
-
- phpBB 1.2.1
- Сообщения: 27
- Стаж: 19 лет 8 месяцев
Спасибо за отклик, Jovani. Дело в том, что я перепробывал все возможные варианты установок локали в lang_main.php. И CP1251 и koi8r и KOI8-R, ничеого не помогло. Как говорил хостер у них "стоит" koi8r. А при работе с базой данных они рекомендуют использовать SQL-команду "SET OPTION CHARACTER SET CP1251_KOI8", но вот как ее исользовать я так и не понял из их объяснений, похоже, что эта команда должна быть прописана в срипте, который работает с БД. Но это уже не по моим зубам.
Проверил у хостера через unix shell командой locale -a , получил в окне
ru - ru_RU - ru_RU.CP1251 - ru_RU.KOI8-R Т.е. как это надо понимать? Стоит и та и другая одновременно!? Какую же прописать в lang_main.php. Хотя и уже все перебрал. Совсем запутался, что делать. Такое ощущение, что где-то у хостера жестко прописана процедура перекодировки, и все установки на phpBB не имеют ни какого значеня.
Самое смешное, что я даже могу не устанавливать русский пзк. Завожу пользователей на русском языке, все принимается. Но результат тот же самый - при сортрировке получается тот же самый результат. Правда и поиск нарушается, становится регистрозависимым. и слово надо вводить точно, без вариантов. Да и не вс е слова ищет.
Вот такая ситуевина. М.б. кто-то порекомендует еще варианты борьбы?????
Проверил у хостера через unix shell командой locale -a , получил в окне
ru - ru_RU - ru_RU.CP1251 - ru_RU.KOI8-R Т.е. как это надо понимать? Стоит и та и другая одновременно!? Какую же прописать в lang_main.php. Хотя и уже все перебрал. Совсем запутался, что делать. Такое ощущение, что где-то у хостера жестко прописана процедура перекодировки, и все установки на phpBB не имеют ни какого значеня.
Самое смешное, что я даже могу не устанавливать русский пзк. Завожу пользователей на русском языке, все принимается. Но результат тот же самый - при сортрировке получается тот же самый результат. Правда и поиск нарушается, становится регистрозависимым. и слово надо вводить точно, без вариантов. Да и не вс е слова ищет.
Вот такая ситуевина. М.б. кто-то порекомендует еще варианты борьбы?????
-
- phpBB 1.2.1
- Сообщения: 27
- Стаж: 19 лет 8 месяцев
Спасибо Jovani за помощь. Разобрался и смог запустить скрипт. При KOI8-R получилась абракадабра, а при CP1251 получил abc_аёяаёя Среда Августа MSD. Т.е. как я раньше читал на этом форуме - это означает, что все должно работать. У меня работает и поиск по русским словам. Но вот сортирует не по алфавиту. И это раздражает. Что дальше можно попробовать?
-
- phpBB 1.2.1
- Сообщения: 27
- Стаж: 19 лет 8 месяцев
"Все должно работать" - это я, наверное, лишнего завернул. Оказалось, что я это взял из твоего сообщения на такую же тему от 07.06.2004 14:12 в общении с Hellraiser, где для проверки локали предлагаешь использовать скрипт, и отмечаешь, что "Если будет строка 'aёяаёя' в нижнем регистре - все работает. Если во второй строке будет 'Среда Декабря MSK' - то совсем все работает". Наверное, я просто не знаю всех тонкостей. Сейчас проверил в окне MySQL командой \s; и получил, что Client characterset: koi8_ru и Server characterset: koi8_ru.
На форуме я выставляю локаль CP1251, так как только в этом случае начинает полноценно работать поиск на русском, т.е. найденное слово выделяется цветом. С koi8-r такого не происходит.
Как получить дополнительную информацию о чем ты говоришь, например, phpinfo посмотреть, мозги еще не дошли. Если подскажешь, то буду очень признателен. В моем Л.С. для тебя маленькая проьба со всеми параметрами моего форума. М.б. глянешь. Спасибо.
На форуме я выставляю локаль CP1251, так как только в этом случае начинает полноценно работать поиск на русском, т.е. найденное слово выделяется цветом. С koi8-r такого не происходит.
Как получить дополнительную информацию о чем ты говоришь, например, phpinfo посмотреть, мозги еще не дошли. Если подскажешь, то буду очень признателен. В моем Л.С. для тебя маленькая проьба со всеми параметрами моего форума. М.б. глянешь. Спасибо.
-
- phpBB 2.0.3
- Сообщения: 384
- Стаж: 19 лет 9 месяцев
- Откуда: Москва, Fortuna-net
-
- phpBB 1.2.1
- Сообщения: 27
- Стаж: 19 лет 8 месяцев
-
- Former team member
- Сообщения: 4463
- Стаж: 20 лет 5 месяцев
- Поблагодарили: 1 раз