У меня есть эта форма:
<form method="post" enctype="multipart/form-data" accept-charset="UTF-8">
Но когда я передаю символ é, он превращает его в Ã ©.
Почему это не работает? Да, база данных MySQL содержит все наборы символов правильно настроенные. (База данных, таблицы.) Если я вручную поместил ее в базу данных с помощью Navicat, она хорошо отображается на веб-странице.
Кроме того, я пробовал метатаг, устанавливая заголовок типа контента, без успеха.
В своем HTML добавьте этот метатег:
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
Также добавьте этот заголовок PHP поверх скрипта:
header("Content-Type: text/html;charset=UTF-8");
[РЕДАКТИРОВАТЬ]:
Еще один совет – сохранить файл как UTF-8 without BOM
кодировки UTF-8 without BOM
. Для этого вы можете использовать Notepad ++ или любой подходящий редактор.
Убедитесь, что вы установили сопоставление соединений с utf8
:
SET NAMES utf8
есть несколько причин неправильной кодировки, есть некоторая помощь: http://www.sebastianviereck.de/en/php-mysql-special-characters-umlauts-utf8-iso/