Меняем в mysql кодировку строк с cp-1252 на cp-1251

/ Просмотров: 9532

На днях устанавливал движок сайта и после установки обнаружил что все данные вытягиваемые из mysql отобразились в зашифрованном виде.

Сначала стал подбирать кодировку в firefox чтобы узнать какая использованна кодировка, но подбор не дал результатов.

Изначально было так:

Шаблон движка в utf-8.

Дамп базы sql в utf-8.

А вот строки таблиц в базе опознать сразу не удалось.

Как всегда, поначалу взялся за раскопки на форумах и блогах, нашол много чего полезного но решения под свою ситуацию не выкопал.

Но всёже парочку подсказок извлёк, после чего сложив подсказки смог решить проблему.

Покупать на AliExpress получая Cashback или даже зарабатывать

1. Для начала из Mysql взял дампы таблиц с ероглифами и перекодировал их через сервис Яндекса

http://www.artlebedev.ru/tools/decoder/

В результате я узнал что строки таблиц с данными были в кодировке cp-1252.

А результат получил в cp-1251.

2. Заменил в mysql всё что было не читабельно на полученые результаты от перекодировщика Лебедева.

После этого получилось что база стала в двух кодировках , строки в windows-1251, а остальное в utf-8.

3. Затем в файл движка где прописано подключение к базе, у меня это файл index.php

пример:

// Соединяемся с БД

require_once("{$CONF['path']}/sources/mysql.php");

$DB = new sql_mysql;

$DB->connect($CONF['sql_host'], $CONF['sql_username'], $CONF['sql_password'], $CONF['sql_database'], $CONF['debug']);

// Прямо ниже этого добавил.

mysql_query ("set character_set_client='cp1251'");

mysql_query ("set character_set_results='cp1251'");

mysql_query ("set collation_connection='cp1251_general_ci'");

Этот совет нашол на каком-то форуме, не знаю насколько он работает, но всёже добавил.

4. А в файл .htaccess добавил:

CharsetDisable On

AddDefaultCharset windows-1251

Этим действием указал что шаблоны должны отображаться не в utf-8, а в windows-1251.

5. Залил дамп базы при помощи Sypex Dumper Lite version 1.0.8b

Трое суток искал решение, а сделал минут за пять.

С уважением к вам, Валентин Куприянов автор блога.

Оставьте комментарий!

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

Пожалуйста не используйте комментарии в качестве доски объявлений, если желаете разместить свою статью пишите обсудим.

Вы можете войти под своим логином или зарегистрироваться на сайте.

проверка доступности сайта

< Яндекс.Метрика