Кодировка - проблемы - перейти с CP-1251 нa UTF-8 Кодировка - проблемы - перейти с CP-1251 нa UTF-8
 

News:

cpg1.5.48 Security release - upgrade mandatory!
The Coppermine development team is releasing a security update for Coppermine in order to counter a recently discovered vulnerability. It is important that all users who run version cpg1.5.46 or older update to this latest version as soon as possible.
[more]

Main Menu

Кодировка - проблемы - перейти с CP-1251 нa UTF-8

Started by lunik, November 29, 2005, 10:08:57 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

lunik

Помогите советом! Моя галерея и базы данныx на данный момент имеют кодировку win-1251. Оптимальным вариантом было бы использовать UTF-8, так как и MySQL, и PHP её теперь поддерживают без дополнительныx настроек? Или я заблуждаюсь, и пользы в плане легкости эксплуатации и поддержки/обновлений от переxода на UTF-8 не было бы никакой? Если UTF-8 предпочтительнее, то как можно конвертировать данные в существующиx таблицаx без потерь?

Извиняюсь, если какие-то детали упустил, так как не достаточно силён в администрировании баз данныx.  :)

koch

#1
а у вас CP1251 нормально на этой версии работает? У меня не получается его запустить  ???

lunik

Сам нашел ответ на свой вопрос. Чтобы перевести галерею из любой кодировки в новый общепринятый стандарт UTF-8, нужно запустить файл charsetmgr.php в корневом каталоге галереи. Скрипт покажет предварительные результаты конвертации перед тем, как делать какие-либо изменения в базе данныx. После того, как убедились, что содержимое колонок таблицы сконвертируется нормально (то есть в предпросмотре не должно быть полей, кирилица в которыx раньше была видна, а теперь - вопросительные знаки и т.д.), то можно смело конвертировать базу данныx. После этого поменяйте настройки галереи на UTF-8 в Config интерфейсе, и убедитесь, что браузер не настроен силой показывать странички в cp1251. У меня пока вроде работает нормально (http://www.funtik.com)



koch,
Чтобы запустить cp1251, мне пришлось переписать Russian.php в каталоге lang версией из дистрибутива 1.3.5. Если у вас есть программа - текстовый редактор, которая позволяет конвертировать из одной кодировки в другую (я использую Crimson Editor, free), то так же можно конвертировать новый Russian.php из UTF-8 в cp1251.


koch

спасибо за ответ. Действиетльно конвертирует, но на мой взгляд в отношении кириллицы лучше всеже использовать пока 1251, т.к. броузеры IE6 и Opera 8/05 с режимом автоматического вбора кодировки не смогли у меня корректно отобразить перекодированные страницы. Необходимо вручную говрить им о UTF-8

lunik

Koch,

прочитал твой ответ и заволновался, так как пользуюсь в основном Firefox и определение кодировок в IE отдельно не протестировал. Потом открыл в IE6, очистил cookies + temp files, поставил галочку на View > Encoding > Autoselect, и зашел на сайт. Определило UTF-8 и показывает всё нормально  :D так что, imho конвертироваться всё-таки стоит.

koch

а пользователи не жалуются?

И потом как быть если сервак по умолчанию выкидывает всем документам 1251. Короче, подождем официального релиза russian.php и посмотрим. Макс666 общеал на днях доделать

zbyte

У меня возникла проблема с именнем людей, которые оставляли свои комментарии, походу филд msg_autor в таблице comments просто забыли проконвертировать.

mche

Точно не уверен, но, то ли при переходе с CP-1251 нa UTF-8, то ли при восстановлении из бэкапа, похерились русские буквы "я", "с" - заменяются квадратиками


Semka


Makc666

#9
Quote from: lunik on November 30, 2005, 12:03:48 AM
Сам нашел ответ на свой вопрос. Чтобы перевести галерею из любой кодировки в новый общепринятый стандарт UTF-8, нужно запустить файл charsetmgr.php в корневом каталоге галереи. Скрипт покажет предварительные результаты конвертации перед тем, как делать какие-либо изменения в базе данныx. После того, как убедились, что содержимое колонок таблицы сконвертируется нормально (то есть в предпросмотре не должно быть полей, кирилица в которыx раньше была видна, а теперь - вопросительные знаки и т.д.), то можно смело конвертировать базу данныx. После этого поменяйте настройки галереи на UTF-8 в Config интерфейсе, и убедитесь, что браузер не настроен силой показывать странички в cp1251. У меня пока вроде работает нормально (http://www.funtik.com)

Спасибо, что написал, как переводить :)
А то пришлось бы читать FAQ =)

serega7777777

Привет российским пользователям. Ребята может подскажете. Поставил версию 1.4.5. Но вот такая проблема. Первое не смог разобраться с редактором, который вы рекомендуете для перекодировки в win 1251. Попробовал сам переписать файл языка. Вроде получилось. Но с ним проблема не хочет работать поиск. А в кодировке UTF поиск работает, но в теле шаблона не понимаются русские буквы. Да и ключевые слова получаются какими то странными. Т.е. даже не могу понять в какой кодировке они выдаются.

Alex Revo

#11
Решение здесь

TrOn

#12
После перехода на версию 1.4.5 возникла проблема с русскими буквами в кодировке UTF-8.

Смотреть тутhttp://gallery.sysert.ru

Помогите найти решение этого глюка, так как я не нашел описания того как от этого избавиться в других темах.

Makc666

#13
Quote from: TrOn on May 17, 2006, 06:43:38 AM
После перехода на версию 1.4.5 возникла проблема с русскими буквами в кодировке UTF-8.

Смотреть тутhttp://gallery.sysert.ru

Помогите найти решение этого глюка, так как я не нашел описания того как от этого избавиться в других темах.

Думаю Вы плохо искали....
Тема с ответом тут:
http://forum.coppermine-gallery.net/index.php?topic=24323.0

Чтобы перевести галерею из любой кодировки в новый общепринятый стандарт UTF-8, нужно запустить файл charsetmgr.php в корневом каталоге галереи. Скрипт покажет предварительные результаты конвертации перед тем, как делать какие-либо изменения в базе данныx. После того, как убедились, что содержимое колонок таблицы сконвертируется нормально (то есть в предпросмотре не должно быть полей, кирилица в которыx раньше была видна, а теперь - вопросительные знаки и т.д.), то можно смело конвертировать базу данныx. После этого поменяйте настройки галереи на UTF-8 в Config интерфейсе, и убедитесь, что браузер не настроен силой показывать странички в cp1251.

Тему объединяю.

TrOn

Проблема как раз в том что я нашел как отконвертировать в UTF-8  и сделал это.Причем все поля показались при работе скрипта нормальными. ОДнако результат не отображаються не кторые русские буквы вместо них закарючки.

TheRain

#15
А как быть, если коппермайн сбриджен (как еще выразиться?) с воблой, которая в свою очередь на 1251. Я так понял, что многоуважаемый Макс не собирается более делать переводы в 1251вот и живу с переводом от 1.4.1

solncasvet

объясните, плз, как перевести галерею в из utf8 кодировки в win1251

толковой инструкции на форуме я так и не нашел

Makc666

#17
Quote from: TheRain on July 01, 2006, 01:12:15 AM
А как быть, если коппермайн сбриджен (как еще выразиться?) с воблой, которая в свою очередь на 1251. Я так понял, что многоуважаемый Макс не собирается более делать переводы в 1251вот и живу с переводом от 1.4.1
Галерея ветки 1.4.х в Unicode.
То, что вобла не поддерживает Unicode - это проблема воблы. Если я правильно понял, что вобла это phpBB, то ждите версию 3.0.0, она будет поддерживать Unicode. IPB и VB давно уже Unicode поддерживают. А phpBB очень медленно развивают.

Чтобы сохранить языковый пакет в 1251 достаточно открыть его в блокноте, поменять одну строку в начале с utf на windows-1251 и сохранить в формате ANSI.

А что дальше делать смотрите выше. Уже обсуждалось.

Makc666

#18
Quote from: solncasvet on July 23, 2006, 06:12:19 PM
объясните, плз, как перевести галерею в из utf8 кодировки в win1251

толковой инструкции на форуме я так и не нашел
Значит плохо искал.
Ответ тут:
http://forum.coppermine-gallery.net/index.php?topic=24323.msg112100#msg112100

Alex Revo

#19
Перевел галерею с 1251 на УТФ-8
Должен отметить скрипт работает не совсем коректно. Мало того что он перекачал и показал мне 20 метров базы при конвертировании, но еще и не тронул дополнительные поля. В таблице  cpg140_pictures поля user1 и  user3, и в таблице cpg140_users поля user_profile1 user_profile2 они так и остались в старой кодировке...
Средствами MySQl можно поменять только collation, но это ничего не дает... В итоге либо удалять все записи из этих полей, либо писать скрипт и дампить базу...

Вопрос такой. Стал замечать что русская буква Ш отображается в дополнительных полях некоректно. См. здесь
Как это можно исправить?