Как я могу отобразить не английские символы из базы данных MySQL, используя PHP? - PullRequest
4 голосов
/ 28 мая 2011

Я создал веб-страницу, на которой требуется хранить информацию не английским символом.Я создал db и таблицу, используя PHPMyAdmin с charset utf8 и collate utf8_general_ci, и ввожу некоторые примеры данных в эту таблицу, в области просмотра PHPMyAdmin я могу видеть неанглийские символы, но когда я запрашиваю эти данные таблицы, используя php, он показывает каквопросительный знак (вот так)

Ответы [ 3 ]

2 голосов
/ 28 мая 2011

Попробуйте добавить это в заголовок:

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

См. на этой странице , чтобы узнать, как это сделать для разных типов контента.

0 голосов
/ 28 мая 2011

Если остальная часть вашей БД находится не в UTF8, а только эта таблица в UTF8, вы можете либо изменить кодировку в заголовке вашего HTML, либо использовать utf8_decode () для декодирования строки utf8.

http://us.php.net/manual/en/function.utf8-decode.php

0 голосов
/ 28 мая 2011

Как вы определяете, что результат вашего запроса не сформирован должным образом utf8?Если вы отображаете его на веб-сайте, помните, что в заголовке должна быть правильно сформированная мета-конструкция, что-то вроде этого:

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

или другой способ форматирования в php ...

<?
...somecode...
header ('Content-type: text/html; charset=utf-8');
...morecode...

В противном случае ваш браузер может попытаться отобразить его, используя другую кодировку символов.

В целом PHP обрабатывает utf8-символы довольно хорошо.Некоторые вещи должны быть рассмотрены, вот хорошее резюме об этом .

...