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

News:

CPG Release 1.6.26
Correct PHP8.2 issues with user and language managers.
Additional fixes for PHP 8.2
Correct PHP8 error with SMF 2.0 bridge.
Correct IPTC supplimental category parsing.
Download and info HERE

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, но это ничего не дает... В итоге либо удалять все записи из этих полей, либо писать скрипт и дампить базу...

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