Я знаю, что определение этого вопроса может показаться слишком неспецифическим, поэтому я попытаюсь предоставить все связанные данные.Проблемы с кодированием (и основы) с MySQL
В этом случае я действую как хостер. У нас есть PHP-страница, работающая с MySQL. Кто-то сделал некоторую операцию над экземпляром MySQL, что вызвало проблемы с визуализацией проблемных символов (-, акценты и т. Д.) (И это все, это мистерия).
Я проверил множество вариантов, но я думаю, что моя нехватка знаний делает меня слепой. Я знаю, что это распространено, поэтому, возможно, мы сможем создать какой-то «контрольный список».
Если я типа 'статус' на экземпляре MySQL я получаю:
Server version: 5.5.15 MySQL Community Server (GPL)
Protocol version: 10
Connection: localhost via TCP/IP
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
TCP port: 3306
Все в UTF8 ... здорово !. Если я связываю с HeidiSQL и проверить переменные я получаю:
character_set_client utf8
character_set_connection utf8
character_set_database utf8
collation_collection utf8_general_ci
collation_database utf8_general_ci
И т.д. и т.п. Тем не менее, и, к сожалению, посетив страницу возвращает странные символы как. Кодировка содержимого в тегах META также является UTF-8.
Я знаю, что некоторые модификации могут быть выполнены в коде, чтобы заставить соединение возникнуть в некоторых кодировках. Но, кроме того, самое невероятное, что страница работает.
Кто-нибудь знает, что изменилось на сервере, чтобы вызвать такое поведение?
Большое спасибо, как всегда!
PS: Мы особенно заинтересованы в аспектах, связанных с конфигурациями серверов. Изменить исходный код клиента - это то, чего мы хотим избежать.
Так оно работало раньше, но перестало работать сейчас? Я не уверен, что понимаю. –
Да, мы считаем, что это из-за операции, которую кто-то сделал ... Поэтому мы хотели бы знать, какие обновления в конфигурации могут привести к этому. Спасибо Pekka :) – IoChaos