2014-11-24 2 views
0

Я написал небольшую социальную сеть на своем компьютере в своем localhost xampp. Здесь все работает нормально.Umlauts и специальные символы не отображаются в php mysql

Текст в моей базе данных mySQL выглядит следующим образом: «была ли für pizza?» а не «был для пиццы?». Это нормально, оно отображается как «был для пиццы?». в моем локальном хосте на моем ПК.

Но теперь я загрузил его на свое веб-пространство, и там я получил эту «пиццу für»? отображается.

Может ли кто-нибудь мне помочь?

+1

http://stackoverflow.com/a/10924295/1291428 – Sebas

+0

http://httpd.apache.org/docs/2.2/mod/core.html#AddDefaultCharset – mudasobwa

+0

http://stackoverflow.com/questions/10367133/utf-8-показывать-правильно-в-базе данных-but-not-in-html-несмотря на-utf-8-charset? rq = 1 – Sebas

ответ

0

Некоторые шаги:

  • Убедитесь, что ваш стол/колонки устанавливаются в юникод сортировки. Более старым, но все же хорошим является utf8_unicode_ci. Он работает в большинстве случаев, но если у вас будет emoji (который вы можете использовать в социальной сети), вы захотите использовать utf8mb4_unicode_ci.
  • Убедитесь, что соединение PHP с базой данных - UTF8. Обычно это выполняется путем выполнения запроса SET names 'utf8'
  • Убедитесь, что ваш веб-сайт сообщает браузеру, что это UTF8. Это, как правило, осуществляется путем посылки заголовка Content-Type: text/html;charset=utf-8 путем включения мета-тег, который говорит то же самое, <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> или включая мета-кодировок тег (новее) <meta charset="utf-8" />
+0

Я сделал эти шаги, но это не помогло:/ – progNewbie

+0

i исправлено с используя utf8_decode() – progNewbie

+0

@progNewFag Если вы используете utf8_decode(), исправили вашу проблему, не так, потому что ваша страница не интерпретируется в UTF-8 (или какой-то шаг между вашей базой данных и выходом не является UTF-8, так как utf8_decode преобразует UTF в ISO-8859-1. – Navarr

0

Это звучит как проблема с кодировкой символов, вам нужно использовать utf-8. Я думаю, что значение по умолчанию - ascII. Я пишу только на английском языке, но у этого guy есть все необходимые шаги.

0

Вы можете преобразовать файл в UTF8 с помощью блокнота плюс плюс. Попробуйте.

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