Арабский язык отображается в виде гибериша и вопросительных знаков
Я создал сайт php, который просто загружал бы текст из базы данных mysql, когда я открывал его в браузере, арабский текст отображался на тарабарском языке, но затем, когда я изменял кодировку моего браузера на UTF-8, он отображался правильно, как можно Я устанавливаю кодировку UTF-8, чтобы пользователям не пришлось ее менять?
Часть меню веб-сайта, которая также загружает пункты меню из одной и той же базы данных (разные таблицы, они имеют одинаковую коалицию "utf8_unicode_ci"), но все они отображаются в виде вопросительных знаков. Как я могу это исправить?
Вы можете проверить веб-сайт на test.bdsfilmfest.com
Заранее спасибо:)
3 ответа
Ваш веб-сервер, вероятно, отправляет iso-8859-1
заголовок типа содержимого по умолчанию.
Либо измените поведение веб-сервера - это должно быть возможно сделать
AddDefaultCharset utf-8
в .htaccess
файл в корневом каталоге вашего веб-сайта.
или переопределить заголовок изнутри PHP в каждом отдельном файле:
header("Content-Type: text/html; charset=utf-8");
Раскомментируйте это:
<!--<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />!-->
Самый простой способ - установить где-нибудь default_charset (возможно, в apache vhost conf, в файле php.ini или.htaccess), чтобы вам не приходилось повторять отправку правильных заголовков для каждого скрипта.