У меня есть приложение, которое позволяет пользователям одной и той же компании с тем же именем проголосовать за определенные элементы, поэтому я не могу использовать IP для управления количеством голосов пользователей. Как я могу использовать jQuery, чтобы позволить пользователю голосовать только один раз?Как использовать jQuery, чтобы позволить пользователю голосовать только один раз?
JQuery:
$("#xmlDiv").on("click", ".upvote", function(e) {
var id = $(this).attr("id");
var main = $(this);
$.ajax({
type: 'post',
url: 'includes/upvote.php',
data: { "id":id },
success(data) {
main.parent().find("div.votenum").html(data);
},
error: function (xhr, textStatus, error) {
alert("Sorry!");
}
});
});
$("#xmlDiv").on("click", ".downvote", function(e) {
var main = $(this);
var id = $(this).attr("id");
$.ajax({
type: 'post',
url: 'includes/downvote.php',
data: { "id":id },
success(data) {
main.parent().find("div.votenum").html(data);
},
error: function (xhr, textStatus, error) {
alert("Sorry!");
}
});
});
HTML:
<img src="arrow-up-01-20.png" style="float:right;" class="upvote" id="5">
<img src="arrow-down-01-20.png" id="5" class="downvote" style="float:right;">
<div class="votenum" style="float:right;" id="5">12</div>
Лучшим способом было бы заставить войти в систему и проверить в базе данных, что они проголосовали только один раз. Быстрый и грязный способ - установить cookie, но это вряд ли безопасно. Это действительно не имеет никакого отношения к jQuery. – dave