2015-12-25 5 views
0

Я из Чехии, и у меня возникла проблема с декодированием, я импортировал базу данных продукта в MYSQL, имена продуктов хранятся в базе данных с использованием кода (возможно, UTF-8). В php я использовал html_entity_decode() для декодирования, но, вероятно, неправильное кодирование. У кого-нибудь есть идея? Спасибо. Примеры:Декодирование в UTF8 от mysql

112 111 109 101 114 97 110 269 101 32 115 237 116 .... -> "pomeran е SIT 1k"

вместо

" Pomerance SIT 1k»

и

80 114 97 382 115 107 225 32 48 46 53 108 -> Пра ~ SKA 0,5

вместо

"Пражска 0,5"

+0

Есть много соображений - MySQL cli (возможно, уже исправлена) и выходной кодировки в PHP - вам не нужно 'html_entity_decode()', потому что значения, вероятно, не кодируются сущностью в базе данных. [Здесь есть несколько вещей] (https://stackoverflow.com/questions/279170/utf-8-all-the-way-through-mysql-php-and-html/279279#279279), а также [ здесь] (https://stackoverflow.com/questions/1317152/am-i-correctly-supporting-utf-8-in-my-php-apps) –

+0

Ваша проблема может быть такой же простой, как неверная выходная кодировка на HTML http://stackoverflow.com/questions/905173/how-do-i-set-character-encoding-to-utf-8-for-default-html –

+0

Я попытался добавить заголовок ('Content-type: text/html ; charset = utf-8 '), единственным изменением является отображение . Но когда я попытался использовать метод javascript String.fromCharCode(), декодирование будет соответствующим образом. – robertnovak

ответ

0

После MYSQL соединения вы должны необходимо выбрать функцию набора символов MYSQL как:

$link = mysql_connect('localhost', 'user', 'password'); 
mysql_set_charset('utf8',$link); // you need this 
Смежные вопросы