Не получается перенести сайт. У работающего сайта кодировка базы cp_general_1251. делаю бэкап базы из командной строки командой mysql... на другом хостинге, создаю базу, совершенно не важно какую кодировку ей ставить, после восстановления базы из дампа скриптом Sypex Dumper сайт на новом хостинге имеет проблемы с кодировкой. При восстановлении sypex'ом он пишет, что обнаружена кодировка базы cp1251. Воот. Как тут быть?
В какой кодировке по факту хранятся данные на рабочем хостинге? Возможно то, что там указана кодировка cp1251 ни о чем не говорит, а на самом деле все хранится в utf8?
Комментарии
это риалфакин политика mysql при работе с изменения на лету charset в связке клиент-сервер!
если у mysql сервера прописано в my.cnf что клиент хочет получать данные в виде cp1251, то в клиенте эту установку можно только переопределить указав "set names=utf8", чего mysqldump и ряд прочих "тупых" клиентов, сделать не позволяют.
я это победить для mysqldump не смог и в частности из-за этого ушел с хостинга на hostfabrica.ru. данная проблема гарантировано решается посредством phpmyadmin.
Если я правильно понял, то если я создам дамп базы работающего на cp1251 сайта phpmyadmin'ом, а затем восстановлю этот дамп на другом хостинге этим же phpmyadmin'ом то проблема решится. Так?
Не хватает базовых знаний. После переноса на другой хостинг и восстановления базы в phpmyadmin вижу кодировку cp1251 и русское содержание базы в phpmyadmin отображается корректно. Но друпал показывает знаки вопроса. Почему так происходит? Сорри, если совсем глупый вопрос, но что-то лыжи не едут...
Не хватает базовых знаний. После переноса на другой хостинг и восстановления базы, в phpmyadmin вижу кодировку cp1251 и русское содержание базы в phpmyadmin отображается корректно. Но друпал показывает знаки вопроса. Почему так происходит? Сорри, если совсем глупый вопрос, но что-то лыжи не едут...
1. убедись, что дамп базы сохраняется в utf8
2. проверь, что веб-сервер отдает контент как utf8
0. кинь ссылку на сайт.
У меня тоже возникли проблемы с кодировкой
Сначала пробовал прописывать в самом шаблоне charset=utf-8 и не помогло, вызывал print с перекодировкой. Далее начал менять кодировку в файле .htaccess AddDefaultCharset utf-8 и опять-таки без результатов, пока вовсе не отключил перекодировку на хостере в том же самом файле .htaccess прописал CharsetDisable On (но все предыдущие изменения вернул в исходные) и у меня сайт начал отображаться правильно в любом браузере не меняя кодировок
Благодарю. Решение помогло справиться с кодировкой на мажордоме (majordomo).
CharsetDisable On