Немецкий Umlaute в Mysql/Phpmyadmin

Насколько я могу читать в API. Событие запускается только тогда, когда пользователь нажимает на опцию.

http://api.jquery.com/change/

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

7
задан 27 June 2009 в 17:31
поделиться

4 ответа

Есть так много разных мест для установки набора символов в MySQL, это замечательно.

Похоже, вы на самом деле не храните UTF8, а вместо этого сохраняете строки UTF8 как latin1. Если они каким-то образом преобразованы в UTF8, когда вы читаете данные из базы данных, они все равно будут правильно отображаться в вашем приложении.

Вы устанавливаете свои соединения в UTF-8, например?

SET CHARACTER SET utf8;
SET SESSION character_set_server = utf8;
SET character_set_connection = utf8;
0
ответ дан 6 December 2019 в 07:27
поделиться

Вот одна возможность:

Похоже, что phpMyAdmin отображает данные UTF-8 как Latin-1. Проверьте заголовок Content-Type, который выдает phpMyAdmin. Если у вас есть firefox с панелью инструментов webdev, вы можете увидеть заголовки напрямую, выбрав «Информация» -> «Просмотреть заголовки ответов» или «Информация ->« Просмотр информации о странице »

.
0
ответ дан 6 December 2019 в 07:27
поделиться

Фундаментальный факт, о котором вы должны помнить, когда говорите об этом виде проблема заключается в следующем: байты и текст - это две разные вещи, и всякий раз, когда вы конвертируете между ними, вы должны использовать правильную кодировку символов, то есть ту, которая была / будет использоваться для обратного преобразования, и та, которая поддерживает все символы, которые используются .

Проблема в том, что с каждым дополнительным преобразованием и каждым дополнительным приложением, которое задействовано, есть шанс, что что-то пойдет не так. Веб-приложения - наихудший случай в этом отношении, поскольку всегда происходит несколько преобразований (обычно 2 * (количество приложений - 1)) и задействовано несколько разных приложений - как минимум: веб-приложение, браузер и БД. В твоем случае, PHPMyAdmin тоже.

Трудно сказать, какое преобразование пошло не так, когда их так много. Однако похоже, что ваши проблемы вызваны PHPmyAdmin, поскольку он отображает умляуты как два символа, что типично для приложений, которые пытаются интерпретировать байты в кодировке UTF-8 как Latin1. Теперь вопрос в том, происходит ли ошибочное преобразование, когда PHPmyAdmin получает данные из БД или когда он отправляет данные в ваш браузер. Какая кодировка объявлена ​​PHPmyAdmin в заголовках своих HTML-страниц? Есть ли у вас возможность доступа к БД через не веб-приложение, такое как DbVisualizer ? Если да, сделайте это, так как это исключает одно преобразование (и, следовательно, вероятность ошибки).

похоже, что ваши проблемы вызваны PHPmyAdmin, поскольку он отображает умляуты как два символа, что типично для приложений, которые пытаются интерпретировать байты в кодировке UTF-8 как Latin1. Теперь вопрос в том, происходит ли ошибочное преобразование, когда PHPmyAdmin получает данные из БД или когда он отправляет данные в ваш браузер. Какая кодировка объявлена ​​PHPmyAdmin в заголовках своих HTML-страниц? Есть ли у вас возможность доступа к БД через не веб-приложение, такое как DbVisualizer ? Если да, сделайте это, так как это исключает одно преобразование (и, следовательно, вероятность ошибки).

похоже, что ваши проблемы вызваны PHPmyAdmin, поскольку он отображает умляуты как два символа, что типично для приложений, которые пытаются интерпретировать байты в кодировке UTF-8 как Latin1. Теперь вопрос в том, происходит ли ошибочное преобразование, когда PHPmyAdmin получает данные из БД или когда он отправляет данные в ваш браузер. Какая кодировка объявлена ​​PHPmyAdmin в заголовках своих HTML-страниц? Есть ли у вас возможность доступа к БД через не веб-приложение, такое как DbVisualizer ? Если да, сделайте это, так как это исключает одно преобразование (и, следовательно, вероятность ошибки).

Теперь вопрос в том, происходит ли ошибочное преобразование, когда PHPmyAdmin получает данные из БД или когда он отправляет данные в ваш браузер. Какая кодировка объявлена ​​PHPmyAdmin в заголовках своих HTML-страниц? Есть ли у вас возможность доступа к БД через не веб-приложение, такое как DbVisualizer ? Если да, сделайте это, так как это исключает одно преобразование (и, следовательно, вероятность ошибки).

Теперь вопрос в том, происходит ли ошибочное преобразование, когда PHPmyAdmin получает данные из БД или когда он отправляет данные в ваш браузер. Какая кодировка объявлена ​​PHPmyAdmin в заголовках своих HTML-страниц? Есть ли у вас возможность доступа к БД через не веб-приложение, такое как DbVisualizer ? Если да, сделайте это, так как это исключает одно преобразование (и, следовательно, вероятность ошибки).

1
ответ дан 6 December 2019 в 07:27
поделиться

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

SET NAMES 'utf8'

По какой-то причине MySQL настроен в моих системах на ввод и вывод закодированы как latin1, что означает, что когда я отправляю его ввод utf8, он неправильно сохраняет его в базе данных, но поскольку преобразование отменяется для вывода, беспорядок отменяется и отображается правильно в браузере (за исключением случаев использования phpmyadmin, который отображает его верно). Это верно только тогда, когда результатом преобразования являются символы, которые разрешены набором символов, используемым в поле базы данных, где он хранится, поэтому вы можете получить ошибки, если вы не остановите это преобразование с помощью вышеуказанного запроса.

19
ответ дан 6 December 2019 в 07:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: