Почему я должен использовать mb_convert_encoding($name,'ISO-8859-15','utf-8'), чтобы получить акцентированные символы для отображения?
Данные, с которыми я здесь работаю, находятся за пределами страницы, использующей кодировку utf8
я настроил свою базу данных и поля для использования utf8_general_ci
теперь по какой-то причине я должен использовать следующий код для переменной, чтобы она правильно отображала символы ударения в базе данных:
mb_convert_encoding($name,'ISO-8859-15','utf-8');
это не имеет смысла для меня. Почему я должен преобразовать его в ISO-8859-15, когда phpmyadmin находится в utf8, данные в utf8, а поля базы данных и таблицы в utf8?
1 ответ
Решение
Скорее всего, вы не установили соединение с базой данных на UTF-8, поэтому ваша база данных ожидает, что вы отправите данные в кодировке ISO-8859. См. http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html