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

Вернуться   Russian TYPO3 community > Обсуждение общих технических вопросов > Общие вопросы

Ответ
 
Опции темы Опции просмотра
Старый 28.02.2012, 22:43   #1
-=UncleByte=-
Senior Member
 
Регистрация: 14.04.2006
Сообщений: 1,159
Отправить сообщение для -=UncleByte=- с помощью ICQ Отправить сообщение для -=UncleByte=- с помощью Skype™
По умолчанию

А вы сами на скриншоте той же базы не видите что ли что сопоставление кодировки в базе utf8_general_ci, кодировка всей базы вроде как тоже такая же, а половина таблиц вдруг почему-то в cp1251 - из-за этого все глюки и есть. Других причин нет и быть не может. Значит, надо конвертировать все в правильный utf8 и перезаливать целиком и полностью все в нем. И забыть cp1251 как страшный сон.
-=UncleByte=- вне форума   Ответить с цитированием
Старый 29.02.2012, 14:16   #2
MAXIMUS1988
Продвинутый
 
Регистрация: 16.11.2011
Сообщений: 38
По умолчанию

Цитата:
Сообщение от -=UncleByte=- Посмотреть сообщение
А вы сами на скриншоте той же базы не видите что ли что сопоставление кодировки в базе utf8_general_ci, кодировка всей базы вроде как тоже такая же, а половина таблиц вдруг почему-то в cp1251 - из-за этого все глюки и есть. Других причин нет и быть не может. Значит, надо конвертировать все в правильный utf8 и перезаливать целиком и полностью все в нем. И забыть cp1251 как страшный сон.
Да, я увидел сразу, что кодировка базы не вся в utf8! И что нужна конвертация. Только как это сделать с таблицами MySqli? Просто вручную выбрать кодировку utf8 в тех таблицах где cp1251 и всё данные сконвертируются? Или скопировать тот код, который я написал выше и в любом редакторе переконвертировать в utf8? Хотя он и так в utf8...1й или второй вариант?
MAXIMUS1988 вне форума   Ответить с цитированием
Старый 29.02.2012, 14:46   #3
-=UncleByte=-
Senior Member
 
Регистрация: 14.04.2006
Сообщений: 1,159
Отправить сообщение для -=UncleByte=- с помощью ICQ Отправить сообщение для -=UncleByte=- с помощью Skype™
По умолчанию

Просто сохраните дамп штатными средствами и посмотрите в обычном текстовом редакторе в какой он кодировке. Потом переведите этот сохраненный дамп в нужную вам кодировку, откорректируйте служебную информацию mysql в дампе, касающуюся кодировок и сохраните его. После этого очистите всю базу и заново выставив параметры соединения с mysql и параметры сопоставления кодировок залейте дамп.
-=UncleByte=- вне форума   Ответить с цитированием
Старый 01.03.2012, 09:26   #4
Андрей Аксенов
Senior Member
 
Регистрация: 12.04.2008
Адрес: Россия, Москва
Сообщений: 706
Отправить сообщение для Андрей Аксенов с помощью ICQ Отправить сообщение для Андрей Аксенов с помощью Skype™
По умолчанию

Зачем все эти трудности?
На всякий случай делайте резервную копию БД.
Ставите расширение sfdbutf8, пи помощи его конвертируйте БД в utf8.
Далее, в самой БД ставим кодировку по умолчанию в utf8_general_ci.
На всякий случай делаем проверку БД в install tool, заодно подгружаем заново все статические таблицы.
Все. Это проверено ни на одном сайте. Работает.
Андрей Аксенов вне форума   Ответить с цитированием
Старый 01.03.2012, 12:13   #5
-=UncleByte=-
Senior Member
 
Регистрация: 14.04.2006
Сообщений: 1,159
Отправить сообщение для -=UncleByte=- с помощью ICQ Отправить сообщение для -=UncleByte=- с помощью Skype™
По умолчанию

@Андрей, дело в том что конвертировать можно и средствами самого mysql прямо в том же phpMyAdmin, но надо хотя бы представлять что там на самом деле лежит, а то бывали случаи когда записи хранились в utf-8 вроде бы, но были в cp1251.
-=UncleByte=- вне форума   Ответить с цитированием
Старый 01.03.2012, 12:29   #6
Андрей Аксенов
Senior Member
 
Регистрация: 12.04.2008
Адрес: Россия, Москва
Сообщений: 706
Отправить сообщение для Андрей Аксенов с помощью ICQ Отправить сообщение для Андрей Аксенов с помощью Skype™
По умолчанию

Цитата:
Сообщение от -=UncleByte=- Посмотреть сообщение
@Андрей, дело в том что конвертировать можно и средствами самого mysql прямо в том же phpMyAdmin, но надо хотя бы представлять что там на самом деле лежит, а то бывали случаи когда записи хранились в utf-8 вроде бы, но были в cp1251.
Это понятно, способов много... Для этого и нужно сначала создать резервную копию базы данных. Для меня проще всего так.
Хотя можно установить и на TYPO3 phpMyAdmin и глянуть, что там...
Установить в нем же нужное сопоставление для всей базы данных - utf8_general_ci, оно понадобиться и для вновь создаваемых таблиц и т. д.
Затем переконвертить поля/таблицы в неправильной кодировке...
Кстати, сталкивался с тем, что иногда связанные поля не могут быть сконвертированы поодиночке - нужно выделить оба связанных поля и одновременно их сконвертировать... тут и упомянутое мной расширение sfdbutf8 не помогает - все ручками...
Ну и обязательно, как уже говорил, проверку БД в install tool, заодно подгружаем заново все статические таблицы.
Тут уже недостающие таблицы пересоздаются самой TYPO3 в уже нужной кодировке... Что касается статических таблиц, то они тоже пересоздаются в нужной кодировке, бывали случаи, когда при регистрации в форме, при выборе страны (на родном языке) появлялись кракозябры... Пересоздание статических таблиц (статик инфо тейбл в данном случае) помогло...
Далее все зависит от конкретного случая... Возможно придется вмешаться и ручками подкорректировать записи содержимого в базе данных. Но это уже другая история...
Андрей Аксенов вне форума   Ответить с цитированием
Старый 01.03.2012, 12:37   #7
-=UncleByte=-
Senior Member
 
Регистрация: 14.04.2006
Сообщений: 1,159
Отправить сообщение для -=UncleByte=- с помощью ICQ Отправить сообщение для -=UncleByte=- с помощью Skype™
По умолчанию

@Андрей, в том и дело что там половина таблиц в cp1251 и половина в utf8 - неважно чем делать дамп, в нем все будет ровно так же и для решения этого вопроса нужно либо дамп делить на куски и конвертировать кусками, либо руками в текстовом редакторе, который позволяет менять на лету кодировку в части файла.
-=UncleByte=- вне форума   Ответить с цитированием
Ответ


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Апгрейд с 4.1 до 4.5 MAXIMUS1988 Установка 0 18.01.2012 23:28
UTF-8 в новой TYPO3 4.5 dmartynenko Общие вопросы 1 14.02.2011 15:55
Глюк 4.1 при выводе дерева в BE. Илья Общие вопросы 15 28.03.2007 17:59
TYPO3 4.1 Beta 1 RSS Bot Новости TYPO3 (на английском) 0 27.11.2006 22:59
TYPO3 4.1 Beta 1 RSS Bot Новости TYPO3 (на английском) 0 25.11.2006 20:09


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


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

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