Я сделал простую похожую страницу для проекта, над которым я работаю.У меня есть страница с ораторами, и у каждого оратора есть кнопка «Мне нравится», после нажатия она направляется на мою php-страницу like_code с идентификатором динамика, и она успешно обновляет базу данных с 1 лайком.Это работает.
Теперь моя проблема в том, что мне нравится только один раз, у меня есть переменная '1', которую я добавляю в свой существующий счетчик с помощью SQL UPDATE при каждом нажатии кнопки.Однако по какой-то причине мне может понравиться каждый оратор только один раз, и если я вручную добавлю большее количество лайков в свою базу данных (например, 7), он будет перезаписан и уменьшен до 1, когда я снова нажму кнопку лайка.
Я не обнаружил подобных проблем в сети, и каждая подобная система в сети сильно отличается от моей.Я также не использую идентификаторы пользователей, а имя динамика + лайк находится в одной таблице.Это единственные два значения, которые я использую из своей базы данных для подобного кода.
<?php
require_once('website/script/database.php');
if(isset($_GET['idsprekers'])){
//Get idsprekers
$id = $_GET['idsprekers'];
$a = "1";
$liked = $row['likecounter'];
$liked = $liked + $a;
//Prepare query
$sql = "UPDATE sprekers SET likecounter=$liked WHERE idsprekers=?";
//$stmt = statement
$stmt = $mysqli->prepare($sql);
//Parameter
$stmt->bind_param("i", $id);
//Execute query
$stmt->execute();
}
header("location:overzicht_spreker.php");
?>
Ссылка на спикера на странице моего спикера
print('<div class="col-2"><a href="like_code.php?idsprekers=' . $tempId
.'" class="btn-like"><i class="far fa-heart"></i></a></div>');
Мой ожидаемый результат заключается в том, что когда я нажимаю кнопку «Мне нравится», она обновляет базу данных каждый раз, когда я нажимаю ее один раз.он будет показывать 1 как в базе данных, и когда я снова нажму на него позже, будет показано 2 лайка.Теперь он показывает только 1 и не хочет сдвинуться с места, если я не введу его вручную.