2009-10-01 1 views
1

У меня есть содержимое, хранящееся в DB Postgres, теперь каждый раз, когда я вызываю контент, чтобы он отображался с помощью php, я получаю забавные квадраты в IE и забавные квадратные вопросительные знаки в Firefox?Получение смешных квадратов в браузере при отображении содержимого

Пример ниже

* - March � May 2009 

Как удалить это?

У меня нет доступа к серверу поэтому не могу настроить кодировку там, только деталь Postgres БД и FTP доступ для загрузки моих файлов

+0

Возможный дубликат [Что такое кодировка символов и почему я должен ее беспокоить) (http://stackoverflow.com/questions/10611455/what-is-character-encoding-and-why-should-i-bother- with-it) – Raedwald

ответ

6

Вы должны убедиться, что Postgres, PHP, и ваш браузер все согласны с кодировкой содержимого и что у вас есть соответствующий шрифт, выбранный в вашем браузере. Самый простой способ сделать это - выбрать UTF8 для всего.

Я не знаю о PHP, но знаю базы данных и браузеры. Сначала вам нужно узнать, является ли база данных UTF8. (Из psql я бы сделал «\ l» и посмотрел на кодировку.) Затем вам нужно выяснить, поддерживает ли PHP UTF8 (я понятия не имею, как вы это делаете). Затем вам нужно посмотреть, как эти символы хранятся в базе данных приложением PHP. Затем вам нужно выяснить, правильно ли веб-сервер сообщает о кодировке содержимого. (В Linux/Unix я бы использовал программу «HEAD» (не «head»), чтобы увидеть возвращаемые заголовки.) И тогда вам нужно выяснить, использует ли ваш браузер шрифт, поддерживающий UTF8.

Или вы можете просто убедиться, что вы только сохранили ASCII и забыли остальную часть мира. Не рекомендуется.

+0

Если у меня нет доступа к серверу БД, я могу что-то сделать в своем коде, чтобы решить эту проблему – Roland

2

У вас проблемы с кодировкой. Убедитесь, что кодировка установлена ​​прямо в базе данных, в разметке html и убедитесь, что сами файлы сохранены в правильной кодировке.

4

Неправильная кодировка где-то. Символы могут быть неправильно сохранены в базе данных или у вас неправильная кодировка в метатегах на странице (попробуйте вручную изменить кодировку в браузере), или может возникнуть проблема с неправильной кодировкой, когда страница связывается с базой данных. Проверьте эту страницу http://www.postgresql.org/docs/8.2/static/multibyte.html для получения дополнительной информации. Try иметь ту же кодировку на всех местах, предпочтительно UTF-8

Смежные вопросы