Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Тематические форумы > Локализация проекта

Ответ
 
Опции темы Опции просмотра
Старый 25.04.2008, 16:33   #1
roman
Новенький
 
Аватар для roman
 
Регистрация: 18.08.2006
Адрес: L'viv, Ukraine
Сообщений: 17
Отправить сообщение для roman с помощью ICQ Отправить сообщение для roman с помощью Yahoo
По умолчанию

Последуйте совету void'а. Я думаю, он прав.
roman вне форума   Ответить с цитированием
Старый 25.04.2008, 18:09   #2
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
Question

Хорошо, а как перекодировать базу в utf-8?

Кое-что прочитал здесь, но здесь говориться только об одной таблице, а нельзя ли такое же сделать для всей базы?

И как узнать в какой кодировке закодированные данные?

Для теста в одной записи контента в заголовке радом с Ð�а віÑ�Ñ‚Ñ€Ñ написал слово «Перевiрка» и сохранил. Иду в базу и смотрю в базе сохранено «Перевiрка - Ð�а віÑ�трѻ… слово «Перевірка» читаемое , а Ð�а віÑ�Ñ‚Ñ€Ñ – не читаемое. Захожу в базу, пишу запрос
Код:
ALTER TABLE tt_content CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
В результате ничего, все как было, так и осталось без изменений.

Но все же вопрос, почему это случилось, ведь база и система настроена в utf-8 за исключением того, что в [setDBinit] не был правильно написан запрос вместо этого
Код:
SET NAMES utf8;
SET CHARACTER SET utf8;
SET SESSION character_set_server = utf8;
SET character_set_connection = utf8;
...было во это
Код:
SET NAMES utf8 SET CHARACTER SET utf8 SET SESSION character_set_server = utf8 SET character_set_connection = utf8;
... и все работало прекрасно.

Теперь непонятно, что делается база в utf-8 настройки системы в utf-8, а вот данные в базе неизвестно в какой кодировке?

Прошу у общества помощи в решении проблемы.
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA

Последний раз редактировалось thebat; 25.04.2008 в 19:06
thebat вне форума   Ответить с цитированием
Старый 25.04.2008, 19:02   #3
roman
Новенький
 
Аватар для roman
 
Регистрация: 18.08.2006
Адрес: L'viv, Ukraine
Сообщений: 17
Отправить сообщение для roman с помощью ICQ Отправить сообщение для roman с помощью Yahoo
По умолчанию

Цитата:
Сообщение от thebat Посмотреть сообщение
Хорошо, а как перекодировать базу в utf-8?
Наиболее простой вариант - слить дамп и переконвертировать его в каком-нибудь редакторе и снова залить. Но так как у вас большая база, то часть уже может быть в utf-8, а часть в какой-нибудь друной... Тут нужно аккуратно все проверять.

Цитата:
Сообщение от thebat Посмотреть сообщение
Кое-что прочитал здесь, но здесь говориться только об одной таблице, а нельзя ли такое же сделать для всей базы?
Нет, нельзя. Там же и написано.

Цитата:
Сообщение от thebat Посмотреть сообщение
И как узнать в какой кодировке закодированные данные?
Посмотрите какая кодировка стоит по умолчанию в вашем клиете (phpMyAdmin, MySQL Query Browser, mysql etc.) В этой кодировке вы увидите корректно отображаемые данные. Смените кодировку клиента на utf-8 и увидите какие записи отображаютс как кракозябры - вот это и есть неверная кодировка... Одним словом нужно экспериментировать. Желаю удачи!

Цитата:
Сообщение от thebat Посмотреть сообщение
Для теста в одной записи контента в заголовке радом с Ð�а віÑ�Ñ‚Ñ€Ñ написал слово «Перевiрка» и сохранил. Иду в базу и смотрю в базе сохранено «Перевiрка - Ð�а віÑ�трѻ… слово «Перевірка» читаемое , а Ð�а віÑ�Ñ‚Ñ€Ñ – не читаемое. Захожу в базу, пишу запрос
Код:
ALTER TABLE tt_content CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
В результате ничего, все как было, так и осталось без изменений.
roman вне форума   Ответить с цитированием
Старый 25.04.2008, 19:09   #4
roman
Новенький
 
Аватар для roman
 
Регистрация: 18.08.2006
Адрес: L'viv, Ukraine
Сообщений: 17
Отправить сообщение для roman с помощью ICQ Отправить сообщение для roman с помощью Yahoo
По умолчанию

http://forum.typo3.biz/showpost.php?...2&postcount=32
roman вне форума   Ответить с цитированием
Старый 25.04.2008, 19:14   #5
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
Question

Цитата:
Сообщение от roman Посмотреть сообщение
Посмотрите какая кодировка стоит по умолчанию в вашем клиете (phpMyAdmin, MySQL Query Browser, mysql etc.) В этой кодировке вы увидите корректно отображаемые данные. Смените кодировку клиента на utf-8 и увидите какие записи отображаютс как кракозябры - вот это и есть неверная кодировка... Одним словом нужно экспериментировать. Желаю удачи!
MySQL-кодировка: UTF-8 Unicode (utf8)
Сопоставление соединения с MySQL: utf8_general_ci

Насколько я понимаю данные в базе данных закодированные в UTF-8

И что-то натолкнуло меня на мысль, что, что-то эти данные берет из базы и еще раз конвертирует их…, такое может быть?
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA

Последний раз редактировалось thebat; 25.04.2008 в 19:31
thebat вне форума   Ответить с цитированием
Старый 25.04.2008, 19:29   #6
void
Senior Member
 
Аватар для void
 
Регистрация: 14.03.2006
Адрес: Russia, Penza
Сообщений: 1,504
Отправить сообщение для void с помощью ICQ
По умолчанию

Очень, очень советую слить базу на локальный mysql и экспериментировать с перекодировкой именно там. Да, к сожалению, если с самого начала не указать SET NAMES utf8; в setDBinit, то в базе будут кракозябры.
__________________
TYPO3 FAQ
void вне форума   Ответить с цитированием
Старый 25.04.2008, 22:06   #7
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
Question

Ребята теперь я понял, что поздно махать руками, надо думать, как это все дело перевести в нормальный читабельный вид.

У меня подозрение, что utf перекодировалось еще раз в utf, то есть произошло двойное кодирование в utf. Может такое быть?

Стоят две задачи:

1. Узнать в какой кодировке, все это дело закодировано или перекодировалось?
2. Чем декодировать всю базу в utf?

Возможно, нужно сделать двоичное декодирование…

Может, кто подскажет, php скрипт, программку или метод как это сделать…?
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA
thebat вне форума   Ответить с цитированием
Старый 26.04.2008, 17:02   #8
thebat
Senior Member
 
Аватар для thebat
 
Регистрация: 05.09.2006
Адрес: TYPO3.if.ua
Сообщений: 224
Отправить сообщение для thebat с помощью ICQ Отправить сообщение для thebat с помощью AIM Отправить сообщение для thebat с помощью MSN Отправить сообщение для thebat с помощью Yahoo Отправить сообщение для thebat с помощью Skype™
Lightbulb

Цитата:
Сообщение от thebat Посмотреть сообщение
Стоят две задачи:
1. Узнать в какой кодировке, все это дело закодировано или перекодировалось?
И так одна проблема решена. Теперь я точно знаю, что все данные закодированы в UTF-8 только, насколько я понял это сделано два раза, как я это проверил? Это я проверял вот здесь...

Теперь осталось решить самую главную задачу, как всю базу перевести в читаемый вид?
__________________
Василий Мосийчук
The BAT!
TYPO3.NET.UA
BLOG.TYPO3.NET.UA
thebat вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 10:55.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория