Есть форма
<form accept-charset="UTF-8">
<input type="hidden" value="Русский текст">
</form>
<button id="ajax">
Есть обработчик на JS который при нажатии на кнопку отправляет данные на сервер
$.post(
"/handler.php",
{
data : $('input').val()
}
);
Есть handler.php
echo mb_detect_encoding($_POST["data"]); //Тут выводит UTF-8
$mysqli = new mysqli( *Тут данные* );
//$mysqli->query('SET NAMES "utf8"'); //Если расскоментировать эту строку все работает
$mysqli->query('INSERT INTO table (my_column) VALUES (data)');
Кодировка всех трех файлов - UTF-8. Кодировка БД и таблицы - UTF-8, режим сравнения - utf8_general_ci. Однако PHPMyAdmin показывает тарабарщину. Если эту тарабарщину скопировать в текстовый редактор и конвертировать windows1251->utf8 то текст становится нормальным.
В каком месте текст вообще преобразуется в windows1251 если везде установлена кодировка UTF-8?