Guzei.com

Zaloguj

Rejestracja

Słuchaj radia na żywo, IR, T, F
Telewizja na żywo, IT, T, F
Gwiazdy show biznesu
Filmy, bajki dla dzieci, kreskówki

Проблема с буквой "ш"

© 2009-03-20, Guzei.com, Игорь Гузей

Это не точная и окончательная инструкция к действию использующая правильные термины и оптимальные варианты. Это скорее лог текущей проблемы. Буду благодарен за любые замечания.

Описание:

Взял данные из cp1251-таблицы,
конвертнул данные iconv( 'cp1251', 'utf-8', 'ш' ) в utf-8,
записал в utf8-таблицу
взял данные из utf8-таблицы и распечала на страницу
через браузер utf-8 вижу, что вместо буквы "ш" бяка из двух символов.
также через оболочку к базе можно видеть всю кириллицу в абракадабре.

Решение:

1) сразу после подключения к БД выполнить:
mysql_query( 'SET NAMES utf8' );
или
mysql_query( 'SET NAMES utf8 COLLATE utf8_general_ci' );
2) не делать iconv

Причина:

в php.ini стоит:
init-connect="SET NAMES cp1251"
убрать там нельзя, т.к. это повлияет сразу на все базы и таблицы, где перехода на utf-8 ещё не было.

Иными словми причина в смеси старого в cp1251 и нового в utf-8 с некорректрой конвертацией через iconv.

SHOW VARIABLES LIKE 'char%'

vcharacter_set_client utf8
character_set_connection utf8
character_set_database cp1251
character_set_filesystem binary
character_set_results utf8
character_set_server cp1251
character_set_system utf8

В PhpMyAdmin:

Системные переменные MySQL
Серверные переменные и настройки
character set client utf8
(Глобальное значение) cp1251
character set connection utf8
(Глобальное значение) cp1251
character set database cp1251
character set filesystem binary
character set results utf8
(Глобальное значение) cp1251
character set server cp1251
character set system utf8
collation connection utf8_unicode_ci
(Глобальное значение) cp1251_general_ci
collation database cp1251_general_ci
collation server cp1251_general_ci
init connect SET NAMES cp1251

Тернии:

пытался ещё комбинировать параметры:
"set character_set_client=cp1251 / utf-8"
"set character_set_results=cp1251 / utf-8"
"set collation_connection=utf8_general_ci"
всё без толоку :)

К аналогичному решению пришли ещё 2.5 года назад здесь:

http://forum.maxsite.org/viewtopic.php?id=175

RU UA BE
BG PL SR CS
EN DE IT FR
PT KK HU
LV ET

Пользовательское соглашение: используя сайт, Вы соглашаетесь на получение рекламы и файлов cookie.
© 1995-2017 Guzei.com
О сайте

0.0007s       Rambler's Top100