Проблемы с кодировкой UTF-8 с базой данных и отображением на веб-странице - PullRequest
0 голосов
/ 15 марта 2011

У меня есть следующий символ - хранится в столбце VARCHAR в базе данных MySQL.Параметры сортировки для этого столбца: utf8_general_ci

На веб-странице у меня есть следующий метатег:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Тем не менее, когда данные извлекаются и отображаютсяпоказать как: 101

Но ТОЛЬКО на моем Mac.

Если у меня был mysql_query("SET NAMES 'UTF8'");, то он правильно отображается на моем Mac.

На моем ПК он отображается правильно, нокогда я добавляю mysql_query("SET NAMES 'UTF8'");, он отображается неправильно.

Что мне не хватает?

1 Ответ

1 голос
/ 16 марта 2011

Существует множество причин, по которым это может быть вызвано, и веб-браузеры, которые вы пробовали, могут попытаться помочь по-разному или по умолчанию.

Судя по руководству MySQL 9.1.10,Поддержка Unicode , SET NAMES 'UTF8' должна использоваться, если вы хотите вывод UTF-8 из MySQL.

Ваш тип контента выглядит немного странно, это опечатка?Вероятно, это должно быть:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Я бы начал с использования сетевого анализатора (например, TCPView или Wireshark ) или некоторых других.другой способ проверить, что выходные данные с сервера действительно имеют формат UTF-8, то есть ó отправлено с сервера как 0xC3 0xB3 .Если это нормально, проверьте наличие проблем с настройками Content-type.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...