Возникла небольшая проблема. Ниже приведен скрипт, который обрабатывает клик на кнопку лайк и затем создает объект в localStorage
+ делает кнопку лайк неактивной. По идее, при следующем клике скрипт должен проверять наличие объекта 'like'
в localStorage
и если он там есть, оставлять кнопку неактивной, но как всегда что-то пошло не так и при каждом обновлении старницы кнопку лайк все еще можно кликать.
$('.likes-button').click(function () {
if (localStorage.getItem("like" === true)) {
$('.likes-button').attr("disabled", true).css({
'cursor': 'default',
'color': 'gray'
});
}
var bkid;
bkid = $(this).attr("data-ansid");
$.get('/add_like/', {book_id: bkid}, function (data) {
$('#like_count').html(data);
$('.likes-button').attr("disabled", true).css({
'cursor': 'default',
'color': 'gray'
});
var store = localStorage.setItem("like", "already");
});
});
Без авторизации пользователя Вы не сделаете 100% защиту от накрутки. Есть некоторые вещи, которые могут просто улучшить защиту, К примеру js библиотека fingerprint, настроив ее - у каждого посетителя так сказать будет свой идентификатор в конкретном браузере. Еще есть supercookie, правда они теряют свою силу после ухода flash в прошлое.
Но это все защита от дурака )
Ваш обработчик срабатывает только после нажатия на кнопку. Если загрузить страницу ещё раз, то он не срабатывает. Сделайте проверку при загрузки страницы и выключайте кнопку в ней. Но это не спасёт от накруток.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как сделать плавную смену картинок фона? Есть вот такой скрипт, но там смена происходит не плавно
Есть форма регистрации, данные с этой формы удачно отправляются на сервер, но при отправке - происходит переход на страницу сервера
Имеется svg спрайт с иконками, как можно реализовать вставку иконку в ::before не отдельным файлом-иконкой *svg, а вытащить уже имеющуюся из спрайта?
а точнее <a id="place_coins"> ибо когда я ввожу в css