2012-02-10 3 views
-1

Можно создать дубликат:
how to select mysql query with foreign language?хранение и извлечение специальных символов MySQL

Я не мог хранить символы, такие как или рядом с текстом в тузде таблице, но изменить параметры сортировки для utf8-bin я могу сохранить их сейчас, но когда я получаю текст, он отображает символ ?, есть ли способ сохранить эти символы вместе с обычными символами и получить их? и меняется ли изменение сортировки на точность поиска по этому тексту?

+0

Многие дубликаты в «родственной» колонке, а также в поиске и в Google .... Также «невозможно восстановить» не является хорошим описанием проблемы. Что именно происходит? –

+0

Пожалуйста, смотрите это, http://stackoverflow.com/questions/633762/special-characters-in-php-mysql – Milap

+0

@Pekka, когда я получить текст он показывает? персонаж . – confucius

ответ

3

Вы должны убедиться, что все в utf8:

  • базе данных
  • подключения к базе данных (что-то вроде $db->exec('SET CHARACTER SET utf8'); в PDO/PHP после создания соединения)
  • РНР документ, если вы Использование PHP
  • Вашего HTML выхода
-1

Попробуйте использовать функцию() а htmlentities. Он будет кодировать все применимые символы для html-объектов.

http://php.net/manual/en/function.htmlentities.php

+0

Я думаю, это wouldn –

+0

Это ужасное решение. Эту проблему можно решить, не прибегая к подобным вещам. –

0

У меня была та же проблема. Вам необходимо выдать эти запросы перед извлечением данных из базы данных.

mysql_query("set character_set_server='utf8'"); 
mysql_query("set names 'utf8'"); 

И прежде чем повторять HTML на веб-странице, установите кодировку страницы в UTF-8.

header('Content-Type: text/html; charset=UTF-8');