При нажатии кнопки «Мне нравится» счетчик обновляется в интерфейсе, но база данных не отражает это изменение. Я просмотрел свой код и не понимаю, в чем проблема. Важно отметить, что чтение данных из базы данных работает прекрасно — я могу получить и отобразить количество подобных. Однако проблема возникает при попытке обновить данные.
Соответствующий код:
Кнопка:
Код: Выделить всё
)
Код: Выделить всё
$(document).ready(function() {
$(".like").click(function() {
let button = $(this);
let post_id = $(button).data('postid');
$.post("funs.php", { 'like': post_id }, function(data, status) {
if (status === "success") {
$(button).html("Like (" + ($(button).data('likes') + 1) + ")");
$(button).data('likes', $(button).data('likes') + 1);
} else {
console.error("Error: ", status);
}
});
});
});
Код: Выделить всё
if (isset($_POST['like'])) {
$post_id = $_POST['like'];
$query = Array('like_count' => $db->inc(1));
$db->where('id', $post_id);
$db->update('posts', $query);
$db->insert('likes', Array('post_id' => $post_id));
echo json_encode(['status' => 'success']);
exit;
}
Что может быть причиной того, что изменения не сохраняются в базе данных?
Что мне следует проверить в коде PHP или jQuery?
Я ценю любую помощь или совет, который вы можете предложить. . Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/790 ... ikes-count
Мобильная версия