phpmyadmin отображает японские символы в виде набора вопросительных знаков, даже если я установил кодировку и сопоставление в utf8_unicode_ci - PullRequest
1 голос
/ 02 декабря 2008

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

Эта база данных ранее была настроена на стандартное сопоставление, равное latin_swedish_ci и у него уже есть много данных. Теперь нам нужно было добавить несколько таблиц, которые требуют поддержки специальных символов, поэтому я определенно просто не мог установить параметры сортировки базы данных на utf8. Мое решение состояло в том, чтобы использовать utf8 только для таблиц, которые нуждались в такой поддержке, и для определенных столбцов, в которых мы ожидали, что будут содержаться специальные символы. Но phpmyadmin по-прежнему отображал их как ????.

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

Ответы [ 3 ]

1 голос
/ 02 декабря 2008

Ммм, на ваш первый вопрос, установлены ли в вашей системе японские шрифты? Они не установлены по умолчанию на большинстве ОС, но я не знаю, какая у вас ОС. Следующий глупо, но твои настройки браузера хорошо?

Следующий вопрос, ответ «нет», если вы ищете 吉 永 小百合, это не будет совпадать с Ёсинага Саюри

Примечание: вы видите мои японские символы?

0 голосов
/ 02 августа 2011

У меня была похожая проблема, если ваши заголовки верны. как только вы установили соединение с базой данных, используйте:

mysqli_set_charset ( $mysqli,'utf8'); 

или

$mysqli->set_charset("utf8");
0 голосов
/ 02 декабря 2008

Проблема заключается в том, что для сопоставления вашего соединения не задано значение utf-8 (наиболее вероятно, latin1), которое необходимо для отображения японских символов. Вы можете установить его вручную, выполнив запросы:

SET CHARACTER SET utf8;
SET NAMES utf8;

Или в вашем конфигурационном файле MySQL:

default-character-set=utf8
skip-character-set-client-handshake
...