Значения из базы данных, которые в кириллице приходят в виде кракозябр. Т.е. в базе указано "Примечание", а в результате приходит "Ïðèìå÷àíèå". Если значение на латинице, то всё приходит корректно. Как исправить?
<head>
<meta charset="utf-8">
</head>
<body>
<div class="test">
<span class="id_remains" data-id_remain="AA001">Айди остатка</span>
<input type="text" id="edit_note">
<button class="edit">Редактировать</button>
</div>
<script>
$(document).on("click", '.edit', function(){
var id_remains = $(this).parent().find('.id_remains').data('id_remains');
$.ajax({
type: 'POST',
url: 'controller/edit_row.php',
data: {id_remains: id_remains},
dataType: 'json',
success: function(response) {
$('#edit_note').val(response.note);
console.log(response.note);
}
});
});
<script>
</body>
edit_row.php
<?php
// Подключаемся к базе данных
$pdo = new PDO('mysql:host=localhost;dbname=name;charset=utf8', 'user', 'pass');
// Получаем значение id_remains из POST-запроса
$id_remains = $_POST['id_remains'];
// Выполняем запрос к базе данных для получения значения width
$stmt = $pdo->prepare('SELECT note FROM ldsp WHERE id_remains = :id_remains');
$stmt->execute([':id_remains' => $id_remains]);
$row = $stmt->fetch(PDO::FETCH_ASSOC);
// Возвращаем значение width в виде JSON-объекта
echo json_encode([
'note' => utf8_encode($row['note'])
]);
Результат SHOW VARIABLES LIKE 'character_set%';
character_set_client utf8mb4
character_set_connection utf8
character_set_database utf8
character_set_filesystem binary
character_set_results utf8mb4
character_set_server cp1251
character_set_system utf8
character_sets_dir /usr/share/percona-server/charsets