страница php не отображает арабский текст - PullRequest
1 голос
/ 30 августа 2011

У меня есть страница PHP, где я пытаюсь отобразить арабский текст, но он отображается.

В базе данных MySQL я успешно храню арабский текст.

Я использую следующий код для подключения к базе данных:

function connect(){
$this->dbLink = mysql_connect($this->dbHost,$this->dbUser,$this->dbPass);   
if(!$this->dbLink) die("Could not connect to database. " . mysql_error());
mysql_select_db($this->dbName);
mysql_set_charset("utf8", $this->dbLink); 
}

И используя следующий заголовок на странице PHP:

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

Но все равно безуспешно.

Спасибо за помощь.

Ответы [ 6 ]

3 голосов
/ 30 августа 2011

проверьте кодировку файла, это должен быть UTF-8, и вы можете попробовать выполнить следующий запрос перед запросом текста:

mysql_query("SET NAMES UTF8");
3 голосов
/ 30 августа 2011

Вы можете использовать этот метакод:

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

И, пожалуйста, проверьте тип символов в столбце mysql ..

Просмотрите этот

1 голос
/ 30 августа 2011

Вы устанавливаете метатег, который говорит браузеру использовать ISO-8859-1 (<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />), который предназначен для латинских сценариев, но, конечно, не арабский.

Также убедитесь, что у вас естьUTF-8 во всех местах:

  • DB-колонка
  • DB-соединение (оно у вас уже есть)
  • веб-сайт (через HTTP-заголовок ИЛИMETA-тег, вам не нужны оба, и вам не нужен второй META-тег, как указано выше…)
1 голос
/ 30 августа 2011

Дополнительно к заголовкам, установленным в разделе meta, проверьте настройку default_charset в php.ini.default_charset должен быть пустым, если вы установили заголовок типа контента самостоятельно или соответствуют своей метаинформации типа контента.

0 голосов
/ 09 мая 2014

Попробуйте добавить эти две строки в ваш php-скрипт после подключения Mysql

mysql_query("SET NAMES cp1256"); mysql_query("set character set cp1256");

0 голосов
/ 12 сентября 2011

Вы пытались настроить соединение для использования UTF-8 (с mysql_set_charset)?

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