Всем привет!
Есть система на FreeBSD 5.3 с установленной БД MySQL 5.0.7, большая часть данных в которую ложится в кодировке win1251
Решил облегчить себе ее администрирование и поставил phpMyAdmin 2.6.2-pl1
При выдаче информации на сайт все в порядке, но вот при выборке данных через phpMyAdmin получается фигня - все то что записано в базу русскими буквами отображается в браузере кракозябрами.
phpMyAdmin почему то считает что "MySQL-кодировка: UTF-8 Unicode (utf8)"При этом БД собиралась со следующими опциями:
WITH_CHARSET=cp1251 WITH_XCHARSET=all WITH_COLLATION=cp1251_general_ciв my.ini есть строка
[mysqld]
init-connect="SET NAMES cp1251"
Как это можно побороть? кто нить сталкивался с подобной задачей?
>Всем привет!
>Есть система на FreeBSD 5.3 с установленной БД MySQL 5.0.7, большая часть
>данных в которую ложится в кодировке win1251
>Решил облегчить себе ее администрирование и поставил phpMyAdmin 2.6.2-pl1
>При выдаче информации на сайт все в порядке, но вот при выборке
>данных через phpMyAdmin получается фигня - все то что записано в
>базу русскими буквами отображается в браузере кракозябрами.
>phpMyAdmin почему то считает что "MySQL-кодировка: UTF-8 Unicode (utf8)"
>
>При этом БД собиралась со следующими опциями:
>WITH_CHARSET=cp1251 WITH_XCHARSET=all WITH_COLLATION=cp1251_general_ci
>
>в my.ini есть строка
>[mysqld]
>init-connect="SET NAMES cp1251"
>
>
>Как это можно побороть? кто нить сталкивался с подобной задачей?
Странно - я никогда с подобной фигнёй несталкивался... у меня и на фре и на линуксе всё нормально работало,а ты верен чтоу тебя страница phpMysqlAdmin загружаеться в кодеровке Windows, а ни Юнекоде?
>
>Странно - я никогда с подобной фигнёй несталкивался... у меня и на
>фре и на линуксе всё нормально работало,
>
>а ты верен чтоу тебя страница phpMysqlAdmin загружаеться в кодеровке Windows,
>а ни Юнекоде?именно в юникоде она и загружается :( поскольку русской трансляции другой там нет :(
>>
>>Странно - я никогда с подобной фигнёй несталкивался... у меня и на
>>фре и на линуксе всё нормально работало,
>>
>>а ты верен чтоу тебя страница phpMysqlAdmin загружаеться в кодеровке Windows,
>>а ни Юнекоде?
>
>именно в юникоде она и загружается :( поскольку русской трансляции другой там
>нет :(
httpd.conf
всавь в конец файла AddDefaultCharset WINDOWS-1251
>>>
>>>Странно - я никогда с подобной фигнёй несталкивался... у меня и на
>>>фре и на линуксе всё нормально работало,
>>>
>>>а ты верен чтоу тебя страница phpMysqlAdmin загружаеться в кодеровке Windows,
>>>а ни Юнекоде?
>>
>>именно в юникоде она и загружается :( поскольку русской трансляции другой там
>>нет :(
>
>
>httpd.conf
>всавь в конец файла AddDefaultCharset WINDOWS-1251Не помогает
apache 2.0
>>>>
>>>>Странно - я никогда с подобной фигнёй несталкивался... у меня и на
>>>>фре и на линуксе всё нормально работало,
>>>>
>>>>а ты верен чтоу тебя страница phpMysqlAdmin загружаеться в кодеровке Windows,
>>>>а ни Юнекоде?
>>>
>>>именно в юникоде она и загружается :( поскольку русской трансляции другой там
>>>нет :(
>>
>>
>>httpd.conf
>>всавь в конец файла AddDefaultCharset WINDOWS-1251
>
>Не помогает
>apache 2.0
в config.inc.php добавь
// Use non-UTF-8 codepages
define('PMA_REMOVED_NON_UTF_8', 1);
в libraries/database_interface.lib.php измениif (!empty($GLOBALS['lang']) && (substr($GLOBALS['lang'], -5) != 'utf-8') && !isset($GLOBALS['cfg']['Lang'])) {
на
if (!defined('PMA_REMOVED_NON_UTF_8') && !empty($GLOBALS['lang']) && (substr($GLOBALS['lang'], -5) != 'utf-8') && !isset($GLOBALS['cfg']['Lang'])) {
Я для MySQL 4.1.х делал, соответственно это условие было в соответствующем разделе. Для 5.0 должно быть всё аналогично.
Правда проблему решить мне пока не удалось, кодировки выбрать получается, а вот данные выбираются всёравно не в той кодировке.
import.php:294: PMA_DBI_query('SET NAMES \'' . $charset_of_file . '\'');libraries/database_interface.lib.php:564: PMA_DBI_query('SET NAMES ' . $mysql_charset . ';', $link, PMA_DBI_QUERY_STORE);
Зкомментируйте эти строки, после этого кирилица черех phpadmin будет отображаться :)