我的网站上有一个upvote / downvote选项。因为页面没有刷新,所以我可以在不必刷新页面的情况下提升图像,因为页面不会刷新,在upvote之后图像的分数也不会刷新。因此,即使我的图像在我的数据库中有1个upvote,该页面也会显示0个upvotes,直到刷新为止。我知道我可以在函数(数据)中返回一些数据,但是我不知道如何在网站上显示它。这是我想要更改的html内容。
echo "<div class='ratingNumber'>";
if ($row['upvotes'] - $row['downvotes'] <= 0) {
echo "<p>0</p>";
} else {
echo $row['upvotes'] - $row['downvotes'];
}
echo "</div>";
这是我的ajax请求。
$('.upvoteImage, .downvoteImage').submit(function(e){
e.preventDefault();
var form = $(this);
var id = form.find("input[name='id']");
var userId = form.find("input[name='userId']");
var action = form.find("input[name='action']");
var ratingNumber = form.parent('.upvoteDownvoteRatingContainer').find('.ratingNumber');
$.post('../includes/voting.inc.php', {id: id.val(), userId: userId.val(), action: action.val()}, function(data){
});
});
这是我的voting.inc.php文件的一部分,其中包含upvote / downvote逻辑。这是我想在最后返回的部分,然后以某种方式将它显示在ratingNumber div的索引页面上。
$sql10 = "SELECT * FROM image WHERE id='$imageId'";
$result10 = mysqli_query($conn, $sql10);
$getResult10 = mysqli_fetch_assoc($result10);
$upvotes = $getResult10['upvotes'];
$downvotes = $getResult10['downvotes'];
$finalVote = $upvotes-$downvotes;
return $finalVote
现在我不确定我应该在函数(数据)中写什么,以便从PHP文件中获取$ finalVote,然后将$ ratingVumber的当前值替换为$ finalVote中的值。任何提示和指示都会有所帮助。