Тема обсуждения багов
Ratibor |
|
---|---|
Kruto
![]() Baza ne v utf-8 ?????? ??? ???? ????? ?????? ? utf-8 Не задавай глупых вопросов, не услышишь вранья.
|
|
This post was edited by Ratibor (2009-02-04 03:22, 16 years ago) |
Trustmaster |
|
---|---|
phpMyAdmin govorit inache
May the Source be with you!
|
Ratibor |
|
---|---|
This post was edited by Ratibor (2009-02-04 03:30, 16 years ago) |
Trustmaster |
|
---|---|
Мда, мы думали у нас тут юникод, а оказывается вообще неизвестно что.
May the Source be with you!
|
Ratibor |
|
---|---|
Trustmaster
Поверь мне, я на этом ютф собаку съел благодаря питерхосту. Ничего не помогало, как бы я не указывал что надо ютф-8. Ни через phpmyadmin, ни через ssh, ни через кучу других методов. Единственно помог этот скрипт и там должно быть обязательно define('RESTORE_CHARSET', 'forced->utf8');не utf8_unicode_ci, а именно forced->utf8 Не задавай глупых вопросов, не услышишь вранья.
|
Trustmaster |
|
---|---|
Так хочешь сказать, это и есть тот самый конвертор, который мы третий день ищем?
May the Source be with you!
|
Ratibor |
|
---|---|
# Trustmaster : а оказывается вообще неизвестно что.Я тоже так и не понял что это, phpmyadmin и другие проги показывают что это utf-8, но это не так. # Trustmaster : Так хочешь сказать, это и есть тот самый конвертор, который мы третий день ищем?Это не конвертор базы. Это метот как нормально залить базу на глючных серваках. Описываю действия: сливаешь базу, можно даже этим скриптом, но возможно там прийдется поиграться вот с этой строкой: define('CHARSET', 'utf8');там надо выставить ту кодировку в которой реально сейчас база. Потом конвертишь в ручную слитый файл. Потом удаляешь всю базу и делаешь тип сравнения(обязательно только на пустой базе) utf8_unicode_ci. Ворачиваешь назад: define('CHARSET', 'utf8');Заливаешь эту базу этим скриптом. Единственное что в нем надо каждому настроить, так это: define('DBHOST', 'localhost');В дальнейшем всегда юзать этот скрипт в том виде в каком он сейчас, т.е. define('CHARSET', 'utf8'); define('RESTORE_CHARSET', 'forced->utf8'); Не задавай глупых вопросов, не услышишь вранья.
|
|
This post was edited by Ratibor (2009-02-04 03:50, 16 years ago) |
motor2hg |
|
---|---|
Если надо помощь могу настроить сайт именно в UTF8, но мне надо доступ!
|
Dayver |
|
---|---|
Дампер форевер.....помню как то он мне тоже помог оживить 300 метровый бекап да еще и с спутаной кодировкой(ну правда не только сам скрипт пришлось юзать, но и без него ничего б не вышло).
Pavlo Tkachenko aka Dayver
|
Ratibor |
|
---|---|
# Dayver : Дампер форевер.....Мне тоже на питерхосте помог только он с переходом на utf-8. Перепробовал кучу других способов, ни один не помог. И именно с forced-> //При добавлении 'forced->', к примеру 'forced->cp1251', кодировка таблиц при восстановлении будет принудительно заменена на cp1251 Не задавай глупых вопросов, не услышишь вранья.
|
Trustmaster |
|
---|---|
Меня больше волнует именно момент конвертации. Надо пробовать. Только придется сайт закрыть на время проведения работ.
Я никак не могу определить, в какой же кодировке текст, который вы сейчас читаете. Браузер говорит UTF-8, но как мы выяснили, это не так. May the Source be with you!
|
|
This post was edited by Trustmaster (2009-02-04 04:26, 16 years ago) |
medar |
|
---|---|
Браузер говорит UTF-8, но как мы выяснили, это не так.Браузеру можно верить. Второй день имею секс с конвертором базы. Оказывается, в mysql такая матрешка из разных кодировок может храниться! Поэтому SET NAMES может всё рушить, если в базе не чистая utf8. Однако без неё все кажет как надо. "Господа! Я пас." (с) Человек с бульвара Капуцинов, момент удара по голове бутылкой. Утро вечера мудренее. rangjungyeshe.ru
|
Ratibor |
|
---|---|
# medar : Второй день имею секс с конвертором базы.Вот потому-то эта строчка нужна в common.php. На экран браузера текст выводится в utf-8, но вот по дороге текст хрен знает из какой кодировки в какую мигрирует. И вот чтобы этого небыло эту строку надо добавить. Она ставит все на свои места. И если гдето по дороге текст мигрирует куда-либо юзер сразу это заметит. На сегодняшний день я твердо понял одно: явное указание кодировки и сравнения при любых обращениях к базе лишним не бывает. Это все из за того, что еще не отжились полностью все старые кодировки и на хостингах такой зоопарк творится. Да и не на всех хостингах админы гении ![]() Немного офтопа: Я хоть и поклонник BSD, но это даже для меня жесть ![]() http://www.opennet.ru/opennews/art.shtml?num=20078 Особенно это: Мотивация такого шага вдвойне более интересна, если вспомнить, что компания Danger с 2008 года является собственностью корпорации Microsoft.Теперь будет возможность нормально админить сервера даже с мобильника :) Не задавай глупых вопросов, не услышишь вранья.
|
Trustmaster |
|
---|---|
Дело дрянь в том плане, что весь наш распрекрасный Russian хранится в неизвестной науке разновидности UTF-8, которая в MySQL указана как utf8, в браузере отображается как utf8, но ежели посмотреть дамп или сделать запрос к базе, то увидим там нечто неопределенное и ничем не определяемое. А значит и конвертировать пока, увы, нечего. Пробовал фокусы с переводом в BLOB, результат тот же.
May the Source be with you!
|
Dayver |
|
---|---|
# Trustmaster : Браузер говорит UTF-8, но как мы выяснили, это не так.Он и будет говорить нам что UTF-8 ибо мы сами прописав строчку даем ему знать о кодировке header('Content-Type: '.$contenttype.'; charset='.$cfg['charset']); а вот почему броузер получив команду интерпретировать текст как утф .....выводит, якобы не утф, корректно тут уже вопрос.....возможно по дороге из базы инфа таки перекодируется в утф8 Pavlo Tkachenko aka Dayver
|
|
This post was edited by Dayver (2009-02-04 05:18, 16 years ago) |