coppermine-gallery.com/forum

Support => Русский (Russian) => Language Specific Support => cpg1.4.x FAQ (Russian) => Topic started by: lunik on November 29, 2005, 10:08:57 AM

Title: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: lunik on November 29, 2005, 10:08:57 AM
Помогите советом! Моя галерея и базы данныx на данный момент имеют кодировку win-1251. Оптимальным вариантом было бы использовать UTF-8, так как и MySQL, и PHP её теперь поддерживают без дополнительныx настроек? Или я заблуждаюсь, и пользы в плане легкости эксплуатации и поддержки/обновлений от переxода на UTF-8 не было бы никакой? Если UTF-8 предпочтительнее, то как можно конвертировать данные в существующиx таблицаx без потерь?

Извиняюсь, если какие-то детали упустил, так как не достаточно силён в администрировании баз данныx.  :)
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: koch on November 29, 2005, 11:29:21 AM
а у вас CP1251 нормально на этой версии работает? У меня не получается его запустить  ???
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: lunik on November 30, 2005, 12:03:48 AM
Сам нашел ответ на свой вопрос. Чтобы перевести галерею из любой кодировки в новый общепринятый стандарт 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.

Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: koch on November 30, 2005, 12:23:42 PM
спасибо за ответ. Действиетльно конвертирует, но на мой взгляд в отношении кириллицы лучше всеже использовать пока 1251, т.к. броузеры IE6 и Opera 8/05 с режимом автоматического вбора кодировки не смогли у меня корректно отобразить перекодированные страницы. Необходимо вручную говрить им о UTF-8
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: lunik on December 01, 2005, 11:23:02 PM
Koch,

прочитал твой ответ и заволновался, так как пользуюсь в основном Firefox и определение кодировок в IE отдельно не протестировал. Потом открыл в IE6, очистил cookies + temp files, поставил галочку на View > Encoding > Autoselect, и зашел на сайт. Определило UTF-8 и показывает всё нормально  :D так что, imho конвертироваться всё-таки стоит.
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: koch on December 02, 2005, 10:13:26 AM
а пользователи не жалуются?

И потом как быть если сервак по умолчанию выкидывает всем документам 1251. Короче, подождем официального релиза russian.php и посмотрим. Макс666 общеал на днях доделать
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: zbyte on December 09, 2005, 09:35:13 AM
У меня возникла проблема с именнем людей, которые оставляли свои комментарии, походу филд msg_autor в таблице comments просто забыли проконвертировать.
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: mche on December 13, 2005, 05:15:39 PM
Точно не уверен, но, то ли при переходе с CP-1251 нa UTF-8, то ли при восстановлении из бэкапа, похерились русские буквы "я", "с" - заменяются квадратиками

Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: Semka on January 21, 2006, 10:10:03 PM
А помоему у тебя все же с русским нелады
http://www.funtik.com/displayimage.php?album=lastup&cat=8&pos=2
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: Makc666 on February 26, 2006, 07:45:26 PM
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 =)
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: serega7777777 on May 06, 2006, 11:56:11 PM
Привет российским пользователям. Ребята может подскажете. Поставил версию 1.4.5. Но вот такая проблема. Первое не смог разобраться с редактором, который вы рекомендуете для перекодировки в win 1251. Попробовал сам переписать файл языка. Вроде получилось. Но с ним проблема не хочет работать поиск. А в кодировке UTF поиск работает, но в теле шаблона не понимаются русские буквы. Да и ключевые слова получаются какими то странными. Т.е. даже не могу понять в какой кодировке они выдаются.
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: Alex Revo on May 07, 2006, 10:10:00 PM
Решение здесь (http://forum.coppermine-gallery.net/index.php?topic=29354.0)
Title: проблема и кодировкой
Post by: TrOn on May 17, 2006, 06:43:38 AM
После перехода на версию 1.4.5 возникла проблема с русскими буквами в кодировке UTF-8.

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

Помогите найти решение этого глюка, так как я не нашел описания того как от этого избавиться в других темах.
Title: Re: проблема и кодировкой
Post by: Makc666 on May 17, 2006, 10:23:36 AM
Quote from: TrOn on May 17, 2006, 06:43:38 AM
После перехода на версию 1.4.5 возникла проблема с русскими буквами в кодировке UTF-8.

Смотреть тутhttp://gallery.sysert.ru (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.

Тему объединяю.
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: TrOn on May 17, 2006, 10:54:04 AM
Проблема как раз в том что я нашел как отконвертировать в UTF-8  и сделал это.Причем все поля показались при работе скрипта нормальными. ОДнако результат не отображаються не кторые русские буквы вместо них закарючки.
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: TheRain on July 01, 2006, 01:12:15 AM
А как быть, если коппермайн сбриджен (как еще выразиться?) с воблой, которая в свою очередь на 1251. Я так понял, что многоуважаемый Макс не собирается более делать переводы в 1251вот и живу с переводом от 1.4.1
Title: utf-8 >> win1251
Post by: solncasvet on July 23, 2006, 06:12:19 PM
объясните, плз, как перевести галерею в из utf8 кодировки в win1251

толковой инструкции на форуме я так и не нашел
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: Makc666 on July 24, 2006, 12:24:24 PM
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.

А что дальше делать смотрите выше. Уже обсуждалось.
Title: Re: utf-8 >> win1251
Post by: Makc666 on July 24, 2006, 12:29:33 PM
Quote from: solncasvet on July 23, 2006, 06:12:19 PM
объясните, плз, как перевести галерею в из utf8 кодировки в win1251

толковой инструкции на форуме я так и не нашел
Значит плохо искал.
Ответ тут:
http://forum.coppermine-gallery.net/index.php?topic=24323.msg112100#msg112100
Title: Re: Ïåðåéòè ñ CP-1251 ía UTF-8?
Post by: Alex Revo on September 06, 2006, 12:40:32 PM
Перевел галерею с 1251 на УТФ-8
Должен отметить скрипт работает не совсем коректно. Мало того что он перекачал и показал мне 20 метров базы при конвертировании, но еще и не тронул дополнительные поля. В таблице  cpg140_pictures поля user1 и  user3, и в таблице cpg140_users поля user_profile1 user_profile2 они так и остались в старой кодировке...
Средствами MySQl можно поменять только collation, но это ничего не дает... В итоге либо удалять все записи из этих полей, либо писать скрипт и дампить базу...

Вопрос такой. Стал замечать что русская буква Ш отображается в дополнительных полях некоректно. См. здесь (http://www.temernik.ru/displayimage.php?pos=-4296)
Как это можно исправить?
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: pipemba on September 06, 2006, 01:54:57 PM
У меня такая проблемма...
сама фотогалерея в кодировке UTF-8
я хочу добавить на гл странице какой то текст...
редактирую template.html и текст отображается в обычном windows кирилица
как это исправить? а то сайт в UTF-8 читается нормально, а то, что я добавил видно не в той кодировке
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: Alex Revo on September 25, 2006, 09:14:05 PM
Проверь чтобы в шапке стояла запись: Content-Type: text/html; charset=utf-8
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: Makc666 on September 26, 2006, 03:59:21 AM
Quote from: pipemba on September 06, 2006, 01:54:57 PM
У меня такая проблемма...
сама фотогалерея в кодировке UTF-8
я хочу добавить на гл странице какой то текст...
редактирую template.html и текст отображается в обычном windows кирилица
как это исправить? а то сайт в UTF-8 читается нормально, а то, что я добавил видно не в той кодировке
Закодировать тот текст, что ты добавляешь в UTF-8.
К примеру открыть template.html в блокноте. Вставить туда текст. И сохранить в формате UTF-8
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: ANDROID on November 02, 2006, 03:19:50 AM
Здравствуйте.
Стояла старая версия 1.3.5, решил наконец таки обновиться на последнию 1.4.10, после апдейта все коментарии, названия и тд стали вопросами...
Тк кодировка у меня на старой версии была windows-1251, то решил конвертнуть в UTF-8. В charsetmgr.php выбрал windows-1251 --> UTF-8, предварительный просмотр показал мои коментарии по-русски ну и нарадостях нажал конвернуть...
Но как были все буквы так и остались вопросами...?
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: ANDROID on November 02, 2006, 03:31:43 AM
Забыл сказать, что в настройках языка стоит UTF-8, хотя пробовал выбирать: Default (lang file)...
Кстате пробовал конвернутнь обратно в windows-1251, а потом ручками поменял в russian.php: с $lang_charset = 'utf-8'; на $lang_charset = 'windows-1251';
и выбрал настройках Default (lang file) и тоже без результатно...
Title: Re: Ïåðåéòè ñ CP-1251 ía UTF-8?
Post by: Makc666 on November 04, 2006, 01:19:07 AM
Quote from: ANDROID on November 02, 2006, 03:19:50 AM
Çäðàâñòâóéòå.
Ñòîÿëà ñòàðàÿ âåðñèÿ 1.3.5, ðåøèë íàêîíåö òàêè îáíîâèòüñÿ íà ïîñëåäíèþ 1.4.10, ïîñëå àïäåéòà âñå êîìåíòàðèè, íàçâàíèÿ è òä ñòàëè âîïðîñàìè...
Òê êîäèðîâêà ó ìåíÿ íà ñòàðîé âåðñèè áûëà windows-1251, òî ðåøèë êîíâåðòíóòü â UTF-8. Â charsetmgr.php âûáðàë windows-1251 --> UTF-8, ïðåäâàðèòåëüíûé ïðîñìîòð ïîêàçàë ìîè êîìåíòàðèè ïî-ðóññêè íó è íàðàäîñòÿõ íàæàë êîíâåðíóòü...
Íî êàê áûëè âñå áóêâû òàê è îñòàëèñü âîïðîñàìè...?
Êàêèå áóêâû, ãäå?
Ññûëêó ìîæåò íà ñàéò?
Ïðè êîíâåðòàöèè, â charsetmgr.php, åñëè âñå îòîáðàæàëîñü ïî ðóññêè, òî çíà÷èò âñå áûëî îê.
Âîçìîæíî ó âàñ ïðîáëåìà â íàñòðîéêàõ ñåðâåðà. Èëè mysql èëè apache.
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: ANDROID on November 04, 2006, 11:30:52 AM
Ссылка на сайт: http://gallery4hospice.jino-net.ru/
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: ANDROID on November 04, 2006, 04:49:59 PM
Попробовал восстановить mysql из backup'a, обновил движку и конвертнул ещё раз, в итоге коментарии стали нормальными, но остались глюки в названиях некоторых картинок и название и описание галереи (но это легко поправимо), а вот что делать с первым...?
Также в "Групповое добавление файлов" такая лабуда:
QuoteпожалуйсС,Р°, выбериС,Рµ дирекС,РѕСЂРёСЋ     
   
   
     index.html
     index.php
Р' папке "albums" РѕС,СЃСѓС,СЃС,РІСѓСЋС, созданные Р'ами папки.
УбедиС,есь, С‡С,Рѕ Р'С‹ создали С...РѕС,СЏ Р±С‹ РѕРґРЅСѓ СЃРІРѕСЋ папку РІРЅСѓС,СЂРё папки "albums" Рё загрузили РІ РЅРµС' РїРѕ FTP СЃРІРѕРё С,,айлы.
Р'С‹ недолжны ничего загружаС,СЊ РІ папки "userpics" Рё "edit", РѕРЅРё зарезервированы для http загрузок Рё РІРЅСѓС,ренниС... РЅСѓР¶Рґ.
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: Makc666 on November 04, 2006, 05:48:14 PM
Quote from: ANDROID on November 04, 2006, 11:30:52 AM
Ссылка на сайт: http://gallery4hospice.jino-net.ru/
То, что у тебя на сайте, его название и описание абра-кадабра, зайди в настройки галереи и набери их по новой, вместо тех значков, что там щас.
Заходить в настройки нужно только в UTF-8.

QuoteТакже в "Групповое добавление файлов" такая лабуда:
Это не лабуда.
Это отображение UTF-8 в кодировке Windows-1251
Это "глюк" твоего браузера.
Всего скорее там не включено Автоматическое определение кодировки и стоит по умолчанию Windows-1251
Или наоборот включено Автоматическое определение, но браузер просто глючит.

Короче если. По галереи нужно ходить только в UTF-8.
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: ANDROID on November 05, 2006, 09:28:43 AM
Вообщем спасибо больше проблем нет..
Кроме одного неудобства "Групповое добавление файлов", пробовал тремя браузерами (IE7, Opera 9.02, FireFox 2.0) открывать и всегда отображается каракодабра (несмотря на то, что если зайти в настройки выбора кодировки, то браузеры автоопределением ставят UTF-8), и только когда вручную выбираешь всё тот же UTF-8 текст становиться нормальным.... Может где-то нужно поправить в файлах галереи...($lang_charset = 'utf-8';) ?
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: Makc666 on November 07, 2006, 12:17:45 PM
Quote from: ANDROID on November 05, 2006, 09:28:43 AM
Вообщем спасибо больше проблем нет..
Кроме одного неудобства "Групповое добавление файлов", пробовал тремя браузерами (IE7, Opera 9.02, FireFox 2.0) открывать и всегда отображается каракодабра (несмотря на то, что если зайти в настройки выбора кодировки, то браузеры автоопределением ставят UTF-8), и только когда вручную выбираешь всё тот же UTF-8 текст становиться нормальным.... Может где-то нужно поправить в файлах галереи...($lang_charset = 'utf-8';) ?
В каком формате отображается данная страцина всегда можно увидеть, если открыть исходный код страницы и взглянуть на строку:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Лично у меня отображается:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Pragma" content="no-cache" />
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: ANDROID on November 07, 2006, 02:43:08 PM
Ведать... что-то у меня с системой нето...
Спасиб за помощь;-)
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: Makc666 on January 09, 2008, 01:23:24 PM
Я написал (частично перевел) небольшой Tutorial связанный с данной темой:
http://forum.coppermine-gallery.net/index.php/topic,49624.0.html
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: Alex Revo on May 16, 2008, 08:20:06 AM
Добавлю еще. Для конвертирования базы из 1251 в утф8 рекомендую воспользоваться он-лайн конвертором. (http://www.motobit.com/util/charset-codepage-conversion.asp?charset=windows-1250&acharset=windows-1251) Меня он не раз выручал.
Title: Re: Перейти с CP-1251 нa UTF-8?
Post by: Makc666 on May 16, 2008, 09:51:05 AM
Quote from: Alex Revo on May 16, 2008, 08:20:06 AM
Добавлю еще. Для конвертирования базы из 1251 в утф8 рекомендую воспользоваться он-лайн конвертором. (http://www.motobit.com/util/charset-codepage-conversion.asp?charset=windows-1250&acharset=windows-1251) Меня он не раз выручал.
Добавлю одно замечание к этому.
Я бы никогда не стал доверять важный данные подобным online сайтом.
Никто не сможет вам гарантировать, что ваши данные на них не украдут.
Title: И сново кодировка
Post by: Ozz999 on March 05, 2010, 08:21:15 AM
Как правильно применять "патч" для файла
../include/functions.inc.php Может кто то более умный подскажет
Code:

diff -crbBN include/functions.inc.php include/functions.inc.php
*** include/functions.inc.php   Tue Nov  6 07:48:00 2007
--- include/functions.inc.php   Wed Jan  9 12:44:29 2008
***************
*** 184,189 ****
--- 184,192 ----
          }
          if (!mysql_select_db($CONFIG['dbname']))
                  return false;
+                 if ($CONFIG['dbcharset']) {
+                   mysql_query("SET NAMES '$CONFIG[dbcharset]'",$result);
+                 }
          return $result;
  }


А то у меня вот такая проблема. Меню и прочее что берётся из файлов вопросиками, а то что берётся из базы квадратиками. Когда меняешь кодировку браузера на кирилицу. вопросики становятся квадратиками, а всё остальное русскими буквами. На денвере всё нормально было, но там я что бы добиться без проблемной работы поменял кодировку в my.cnf 1251 на utf8. Или остаётся любоваться сайтом на денвере.
Title: Re: И сново кодировка
Post by: Ozz999 on March 05, 2010, 11:55:42 AM
Разобрался куда вставить, только не помогло пока.
Title: Re: И сново кодировка
Post by: Ozz999 on March 05, 2010, 12:05:59 PM
Частично помогло. База заработала, по русски, но вот вопросики в меню остались. Мне не понятно где я мог кодировку потерять в самих файлах. Русский текст берётся из файлов, они получается не в той кодировке. Хотя у них utf8. Буду искать решение. Если кто знает отпишитесь
Title: Re: И сново кодировка
Post by: Alex Revo on March 05, 2010, 12:07:35 PM
Откройте файлы в notepad++ и пересохраните в нужно кодировке.
Title: Re: И сново кодировка
Post by: Ozz999 on March 05, 2010, 12:40:43 PM
Осталось выяснить какая кодировка правильная. Если меняю на ANSI языковой файл то вместо вопросиков квадратики.

И вот ещё что на английский галерею не могу переключить.
Title: Re: И сново кодировка
Post by: Alex Revo on March 05, 2010, 12:47:18 PM
Посмотрите еще кодировку у файлов темы и какой тег там прописан в коде.
Title: Re: И сново кодировка
Post by: Ozz999 on March 05, 2010, 12:54:09 PM
Разобрался. Скачал заново галерею и залил по новой язык русский.

Просто нашёл на форуме, что нельзя править блокнотом. А я как раз там пару слов изменил. Ну сума сойти с это галереи. Как то с кодировками разработчики не подумали
Title: Re: И сново кодировка
Post by: Alex Revo on March 05, 2010, 02:13:05 PM
Дело в том, что блокнот сохраняет в UTF-8 BOM, поэтому я порекомендовал notepad++
Title: Re: И сново кодировка
Post by: Makc666 on March 05, 2010, 10:12:25 PM
Quote from: Ozz999 on March 05, 2010, 12:54:09 PM
Ну сума сойти с это галереи. Как то с кодировками разработчики не подумали

Да нет в ней никаких проблемы если честно.

Если у Вас база данных установлена "неверно" или вы где-то напортачили ранее, то это не значит, что проблемы в галереи.
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: BigMichael on April 02, 2010, 07:48:03 AM
Прошу помощи. Решил написать в эту тему, так как тут тема ближе всего к тому, что нужно исправить.
После переноса галереи на новый хостинг вижу то, что во вложении. А именно, русские названия всех категорий и альбомов в виде знаков вопроса. Галерея и база имеют одинаковую кодировку cp1251, как и русификатор галереи. Переносил галерею следующим образом:
1. Сделал дамп БД на старом хостинге.
2. Залил его на новый хостинг. В PHPmyAdmin проконтролировал правильность переноса - всё на русском, кодировка правильная - ср1251. В файл русификации добавлен
3. Скопировал все файлы галереи со старого хостинга на новый.
4. Перепрописал пути к БД в соответствующем файле, база подключилась успешно.

Подскажите, пожалуйста, что где можно поправить, чтобы устранить эту проблему.
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: Makc666 on April 06, 2010, 12:42:04 AM
Quote from: BigMichael on April 02, 2010, 07:48:03 AM
Подскажите, пожалуйста, что где можно поправить, чтобы устранить эту проблему.
Попробуйте внести изменения из вот этого поста:
http://forum.coppermine-gallery.net/index.php/topic,49624.msg238431.html#msg238431

При этом в строке:
$CONFIG['dbcharset'] = "";
нужно указать кодировку:
$CONFIG['dbcharset'] = "cp1251";
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: BigMichael on April 06, 2010, 09:35:55 AM
Makc666, спасибо за ответ и за личное сообщение. К сожалению, не могу ответить вам также в личку, а тема, на которую вы привели ссылку, уже закрыта. Поэтому пишу сюда. В моём случае переменная character_set_database не совпадает с другими переменными character_set_*, вот то что есть у меня:

character_set_client utf8
character_set_connection utf8
character_set_database cp1251
character_set_filesystem binary
character_set_results utf8
character_set_server latin1
character_set_system utf8
character_sets_dir /usr/share/mysql/charsets/
collation_connection utf8_general_ci
collation_database cp1251_general_ci
collation_server latin1_swedish_ci


Соответственно, нужен "патч" для файла ../include/functions.inc.php
К сожалению, я не программист, поэтому не могу понять в какое место кода этого файла нужно вставить указанный патч:

diff -crbBN include/functions.inc.php include/functions.inc.php
*** include/functions.inc.php   Tue Nov  6 07:48:00 2007
--- include/functions.inc.php   Wed Jan  9 12:44:29 2008
***************
*** 184,189 ****
--- 184,192 ----
          }
          if (!mysql_select_db($CONFIG['dbname']))
                  return false;
+                 if ($CONFIG['dbcharset']) {
+                   mysql_query("SET NAMES '$CONFIG[dbcharset]'",$result);
+                 }
          return $result;
  }


Прошу "ткнуть носом" в нужное место кода, куда это надо вставить. И прошу прощения за дилетанство, обещаю исправиться. Файл ../include/config.inc.php скорректировал успешно, указав там кодировку базы данных галереи - cp1251
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: ich on April 06, 2010, 09:08:49 PM
Quote from: BigMichael on April 06, 2010, 09:35:55 AM
Прошу "ткнуть носом" в нужное место кода, куда это надо вставить. И прошу прощения за дилетанство, обещаю исправиться. Файл ../include/config.inc.php скорректировал успешно, указав там кодировку базы данных галереи - cp1251
В файле functions.inc.php поиском по запросу ($CONFIG['dbname'] найдете функцию:
function cpg_db_connect()
{
        global $CONFIG;
        $result = @mysql_connect($CONFIG['dbserver'], $CONFIG['dbuser'], $CONFIG['dbpass']);
        if (!$result) {
                return false;
        }
        if (!mysql_select_db($CONFIG['dbname']))
                return false;
        return $result;
}

меняете на
function cpg_db_connect()
{
        global $CONFIG;
        $result = @mysql_connect($CONFIG['dbserver'], $CONFIG['dbuser'], $CONFIG['dbpass']);
        if (!$result) {
                return false;
        }
        if (!mysql_select_db($CONFIG['dbname']))
                return false;
                if ($CONFIG['dbcharset']) {
                mysql_query("SET NAMES '$CONFIG[dbcharset]'",$result);
                }
        return $result;
}
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: BigMichael on April 06, 2010, 09:30:49 PM
Спасибо большущее! Теперь всё исправил, всё работает как надо.
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: BigMichael on April 14, 2010, 10:12:53 PM
Снова аналогичная проблема, уже с другой галереей. Картинка с проблемой в приложении. Имена пользователей, написанные русскими буквами отображаются в виде знаков вопроса.
Все вышеописанные действия предприняты:

1. По результату запроса к БД show variables имею следующее:
Quotecharacter_set_client    utf8
character_set_connection    utf8
character_set_database    latin1
character_set_filesystem    binary
character_set_results    utf8
character_set_server    latin1
character_set_system    utf8
character_sets_dir    /usr/share/mysql/charsets/
collation_connection    utf8_general_ci
collation_database    latin1_swedish_ci
collation_server    latin1_swedish_ci

Затем:
1. "Пропатчен" файл functions.inc.php, как описано ранее.
2. Добавлена строка с кодировкой БД в файл config.inc.php

Результат на скрине. Помогите, пожалуйста. Что и где еще нужно скорректировать?
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: BigMichael on April 14, 2010, 10:20:29 PM
В настройках галереи выставлен Русский язык и кодировка символов cyrillic (Windows-1251), в языковом файле russian.php написано:
Quote$lang_charset = 'utf-8';
И что-то я во всех этих переменных совсем запутался...
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: BigMichael on April 24, 2010, 07:25:17 PM
Коллеги, я всё понимаю. Не форумом единым, как говорится... Но не по неделе же ждать ответа на простой в общем-то вопрос. Ведь именно здесь чуть ли не единственная возможность получить квалифицированный совет по коппермайну на русском...
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: Makc666 on May 04, 2010, 12:05:00 AM
Quote from: BigMichael on April 14, 2010, 10:12:53 PM
Снова аналогичная проблема, уже с другой галереей. Картинка с проблемой в приложении. Имена пользователей, написанные русскими буквами отображаются в виде знаков вопроса.
Все вышеописанные действия предприняты:

А что значит аналогичная проблема? В прошлой проблеме у Вас все записи из базы данных отображались не на русском. Сейчас отображаются только имена пользователей. Такое обычно происходит, когда галерея интегрирована с другим приложением.

В текущей базе данных галереи, имена пользователей нормально отображаются, при просмотре черзе phpMyAdmin?
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: BigMichael on May 04, 2010, 08:11:46 AM
Quote from: Makc666 on May 04, 2010, 12:05:00 AM
В текущей базе данных галереи, имена пользователей нормально отображаются, при просмотре черзе phpMyAdmin?
Галерея интегрирована с СМФ. Насчёт просмотра имён в БД - какую таблицу конкретно смотреть? Конкретно этот пользователь, у которого вместо ника отображаются ??????, некоторое время назад сменил отображаемое имя. И оно везде видно корректно, и в БД, и в комментах, знаки "?" только в этих местах:
Главная > Галереи пользователей > ??????
Случайные файлы - ??????'s Gallery
Последние добавления - ??????'s Gallery

Судя по количеству символов, галерея пытается написать его старый ник, которого уже нет.
Для наглядности вот ссылка на галерею: http://bowmania.ru/coppermine/index.php?cat=10010
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: Makc666 on May 15, 2010, 12:10:35 AM
Нагляднее всего видно тут:
http://bowmania.ru/coppermine/profile.php?uid=10

Поступите так.
Закройте ваш сайт с помощью .htaccess от всех, кроме себя (вашего IP адреса)
Order deny,allow
Deny from All
Allow from <ВАШ_IP>


Потом отключите интеграцию.
http://yourdomain.tld/your_coppermine_folder/bridgemgr.php

И откройте ссылку:
http://bowmania.ru/coppermine/profile.php?uid=10

Как будет после этого будет имя отображаться?
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: BigMichael on May 17, 2010, 09:40:07 AM
В галерее есть только один зарегистрированный пользователь. Это я, администратор, который устанавливал галерею. Все остальные пользователи - это пользователи форума смф, в связке с которым работает галерея. Информация о пользователях берется из БД форума. Соответственно, при отключенной интеграции такого пользователя: http://bowmania.ru/coppermine/profile.php?uid=10 не существует.
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: Makc666 on May 28, 2010, 11:19:47 PM
Quote from: BigMichael on May 17, 2010, 09:40:07 AM
В галерее есть только один зарегистрированный пользователь. Это я, администратор, который устанавливал галерею. Все остальные пользователи - это пользователи форума смф, в связке с которым работает галерея. Информация о пользователях берется из БД форума. Соответственно, при отключенной интеграции такого пользователя: http://bowmania.ru/coppermine/profile.php?uid=10 не существует.
Значит

или кодировка базы данных вашего форума и вашей галереи разные,

или в форуме проблемы с кодировкой из-за неправильного подключения форума к базе данных - другими словами - т.к. форум работает с этой же базой данных, а кодировка, исходя из вашего примера выше,
character_set_connection    utf8
character_set_database    latin1

там разная, то возможно, что в форуме не используется подобных патч, который Вы наложили на галерею. А это значит, что уже давно данных форума в базу данных заносятся неверно.

Какой из этих вариантов у Вас - это вы только можете ответить.
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: BigMichael on May 30, 2010, 07:59:42 PM
Quote from: Makc666 on May 28, 2010, 11:19:47 PM
Значит
или кодировка базы данных вашего форума и вашей галереи разные,
или в форуме проблемы с кодировкой из-за неправильного подключения форума к базе данных - другими словами - т.к. форум работает с этой же базой данных, а кодировка, исходя из вашего примера выше,
character_set_connection    utf8
character_set_database    latin1

там разная, то возможно, что в форуме не используется подобных патч, который Вы наложили на галерею. А это значит, что уже давно данных форума в базу данных заносятся неверно.

Какой из этих вариантов у Вас - это вы только можете ответить.

Как мне это определить? В самом форуме проблем с кодировкой нет никаких, там всё везде корректно отображается. Везде там прописана cp1251. Конечно же, в форуме не используется патч для галереи. Там делались свои патчи на другие файлы. В результате везде в форуме используется cp1251. Проблема именно в галерее, по всей видимости. Несоответствие кодировок. Но как это правильно продиагностировать и исправить, до меня так и не доходит. Все проделанные до этого действия принесли свои положительные результаты, но до конца проблема не устранена. К тому же обнаружилась ещё одна нестыковка по кодировкам - она во вложенном файле.  Названия групп пользователей в админке галереи отображаются знаками вопроса. Очень прошу объяснить, что и где нужно ещё исправить, чтобы всё это устранить. Готов предоставить для этого все необходимые данные. Помогите, пожалуйста.
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: Makc666 on June 24, 2010, 11:30:26 AM
В базе данных у вас должны быть ДВЕ базы. Одна для форума, другая для галереи.
Сами базы созданы в каких кодировках?
А так же таблицы в этих базах в правильных кодировках находятся?
Должно быть cp1251_general_ci

Я бы начал с наведения порядка с этим.
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: BigMichael on July 02, 2010, 10:41:58 AM
База у меня одна для форума и для галереи. Просто внутри БД есть таблицы с разными префиксами. Что касается форума, то там всё и везде в cp1251_genereal_ci. А вот с галереей везде разное. Я прописывал патчи для некоторых файлов галереи, об этом сообщал ранее. Но непосредственно кодировку языка в таблицах галереи не делал. Если это сделать просто руками, прописав в PHPMyAdmin нужную кодировку, это поможет? Или нужны какие-то другие действия?
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: Makc666 on July 19, 2010, 08:20:47 AM
Quote from: BigMichael on July 02, 2010, 10:41:58 AM
База у меня одна для форума и для галереи. Просто внутри БД есть таблицы с разными префиксами. Что касается форума, то там всё и везде в cp1251_genereal_ci. А вот с галереей везде разное. Я прописывал патчи для некоторых файлов галереи, об этом сообщал ранее. Но непосредственно кодировку языка в таблицах галереи не делал. Если это сделать просто руками, прописав в PHPMyAdmin нужную кодировку, это поможет? Или нужны какие-то другие действия?

Я Вам говорю о том, что кодировка таблиц форума и кодировка таблиц галереи должны быть одинаковые.
В phpMyAdmin есть колока "Сравнение" (Collation) для таблиц.
Смотрите там.

Изменить кодировку таблиц в phpMyAdmin можно, но это не изменить кодировку ранее записанные в эту таблицу данных. Чтобы это исправить нужно делать дамп базы данных указывая верную кодировку, а потом заново заливать базу данных обратно.
Title: Re: Кодировка - проблемы - перейти с CP-1251 нa UTF-8
Post by: wolcha on August 13, 2011, 08:23:43 PM
Здравствуйте уважаемые форумчане!
Чтобы не копировать свой вопрос на форуме, приведу ссылочку на мой вопрос, может кто-то подскажет что делать?
http://forum.coppermine-gallery.net/index.php/topic,72624.0.html