![]() |
Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
![]() |
#1 |
Senior Member
Регистрация: 21.04.2006
Сообщений: 245
|
![]()
Использую кодировку UTF8. В [BE][forceCharset] стоит utf-8
Сам BE нормально показывает на русском. На локальном компьютере FE отображается нормально - на русском. Если смотреть в phpMyAdmin - в полях с русским - кракозяблы (с умляутами). Теперь переношу сайт на FreeBSD (данные переношу через дамп, созданный phpMyAdmin'ом). Получаю - BE на русском, FE - данные вопросительными знаками. Причем, то, что в самом шаблоне сделано в UTF-8 - нормально отображается. В BE также вопросительными знаками видны русские названия страниц. Очевидно, проблема в формате данных в БД. Кодировки у базы, таблиц и полей - одинаковые. Если смотреть на юниксовом сервере PhpMyAdmin, то внешне - те же самые кракозяблы, ничем не отличаются. Что делал. 1) Пробовал в localconf.php писать. $TYPO3_CONF_VARS['SYS']['setDBinit'] = "SET NAMES 'utf8'".chr(10)."SET CHARACTER SET 'utf8'"; (после этого вместо вопросительных знаков появляются те же символы, что и в phpMyAdmin с умляутами, но все равно не на русском) 2) в htaccess пробовал такие настройки; включал и выключал их - все одно. PHP_VALUE mbstring.detect_order UTF-8 PHP_VALUE mbstring.func_overload 2 #CharsetDisable Off CharsetSourceEnc UTF-8 Правда, сервер валится при CharsetDisable или CharsetTurnOff - с этим не удалось попробовать. Возможно, хостер не дружит с этим... Куда еще копать, ПОДСКАЖИТЕЕЕЕ!!! |
![]() |
![]() |
![]() |
#2 | |
Administrator
|
![]()
какие версии MySQL в обих случаях?
(надо 4.1 или выше) Цитата:
1) сначала в дампе исправить все latin1 -> utf8 2) потом поверх дампа залить t3d сделанный из сайта (более простой способ пока не нашел) |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Регистрация: 21.04.2006
Сообщений: 245
|
![]()
Версия 4.1.14 for Win32
А вот что выдает на никсах: mysql Ver 14.12 Distrib 5.0.19, for portbld-freebsd5.4 (i386) using 4.3 Т.е., видимо, 5-я версия |
![]() |
![]() |
![]() |
#4 | |
Senior Member
Регистрация: 21.04.2006
Сообщений: 245
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#5 | |
Administrator
|
![]() Цитата:
только сначала ...general_ci и general_cs не забыть поменять. |
|
![]() |
![]() |
![]() |
#6 | |
Senior Member
Регистрация: 21.04.2006
Сообщений: 245
|
![]() Цитата:
Может опишете как вы переносите сайты? |
|
![]() |
![]() |
![]() |
#7 |
Продвинутый
|
![]()
Проблема повидимому в том как вы делаете дамп. Важно проконтролировать кодировку соединения с MySql на виндовом сервере.
|
![]() |
![]() |
![]() |
#8 | |
Senior Member
Регистрация: 21.04.2006
Сообщений: 245
|
![]() Цитата:
![]() Формат результирующего файла получается UTF-8. Пробовал ставить при экспорте "MYSQL 40 compability" или "Использовать шестнадцатиричные (hexadecimal) бинарные" - не помогает. Вообще, пользовался phpMyAdmin для переноса тысячу и один раз, все было нормально на windows1251. А вот UTF8 меня прямо подкосило ![]() Не оставьте в беде ![]() |
|
![]() |
![]() |
![]() |
#9 |
Senior Member
Регистрация: 21.04.2006
Сообщений: 245
|
![]()
Похоже, проблема была с кодировками таблиц на удаленном сервере
Убил базу на хостере (юникс), заново создал ее. Перенес через T3D - все ок, даже в PhpAdmin на русском стало ![]() Но возникла ошибка - в FE если сбросить кэш, то все нормально отображается, а если выводятся кэшированные данные, то страница вообще не показывается и сильная ругань ) Обнаружил строку в localconf.php (которую раньше вставлял): $TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8'.chr(10).'SET CHARACTER SET utf8'; Убрал ее. Тогда опять кодировка слетела. Пришлось еще раз через T3D перенести - теперь все ок. Правда, в PhpMyAdmin опять кракозяблы, но это уже как родное ![]() |
![]() |
![]() |