проблема со спецсимволами - PullRequest
1 голос
/ 07 октября 2010

Я загружаю статьи из моего блога на мой веб-сайт из mysqlDb. Статьи хорошо отображаются в блоге, но на сайте некоторые символы, такие как ţ, ş, ă и т. Д., Заменены черным квадратом с вопросительным знаком внутри. У меня в документе установлено UTF-8 так же, как в блоге.

Ответы [ 2 ]

4 голосов
/ 07 октября 2010

Вы должны сообщить MySQL, что соединение должно быть установлено в UTF-8.Для этого используйте функцию mysql_set_charset (вам нужен PHP 5.2.3).Если вы используете PHP <5.2.3, попробуйте: </p>

mysql_query("SET character_set_results = 'utf8', character_set_client = 'utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8'", $conn);

Также убедитесь, что заголовки сообщают, что документ находится в UTF-8 (функция header и / или метатеги HTML установлены правильно).

Также убедитесь, что ваши файлы PHP сохранены в формате UTF-8 без a BOM .

2 голосов
/ 07 октября 2010

Как вы добавили эти символы в документ?В зависимости от редактора кодировка может быть перекошена при сохранении.Вы установили тип документа в HEAD с использованием META в дополнение к указанию кодировки с использованием заголовков PHP?

Вот еще несколько статей по теме http://htmlpurifier.org/docs/enduser-utf8.html

...