php - 实时 jQuery Ajax PHP 中的赞成或反对投票

标签 php jquery ajax phpmyadmin real-time

好吧,这是我正在做的事情的快速解释: 我有一个网站,人们可以在其中对“冠军”投票赞成或反对。这些冠军的生命值一开始为 100。如果您对某个特定英雄投赞成票,那么他们的生命值现在为 101。投反对票则为 99。

该网站已启动并运行,现已运行 5 个赛季(有超过 1200 名成员(member)在玩)。所以有很多投票同时进行。现在一切正常。但是,对于下个赛季,我将实现 jquery/ajax 进行“实时”投票(因此页面不需要在每次投票时刷新)。

我现在遇到的困难是,首先,我不太擅长ajax/js。然而,主要问题是当有人点击投票时,我需要一种方法从数据库中获取实时数据,然后将其放入 jquery/ajax 查询中,然后实时输出真实数据(或者至少我)感觉这是应该做的)。

还有第二部分...人们每小时可以投票 3 次。页面顶部有一条通知,显示他们还剩多少票,“您还剩 3 个操作。”这又是,按原样工作正常,但我想也需要通过 ajax 进行修复才能实现实时。

我希望我对此解释得足够好。如果没有,请告诉我! 任何帮助将不胜感激!

代码:

$("a.vote-heal").click(function(){
    var votes;
    var champ;
    var health;
    champ = $(this).attr('id');

    votes = $("#votesLeft").text();
    votes--;

    //the main ajax request
    $.getJSON("/load-champ.php?champ="+champ, function(data) {
        $.each(data, function(i,data) {
            health = data.health;
            health++;
        });
        $.ajax({
            type: "POST",
            url: "/votes.php",
            data: "champ="+champ+"&action=heal",
            success: function(msg) {
                $('#'+champ+' .health-inner').html(health);
                $('#header .vote-remain').html('You have <strong><span id="votesLeft">'+votes+'</span> Actions</strong> remaining');
                $('#'+champ+' .voting').html('<a id='+champ+'" class="button vote-hurt" href="javascript:;">Hurt '+champ+'</a><div class="button vote-heal action-tooltip">Heal '+champ+'</div>');
            }
        });
    });
});

最佳答案

所有这些都只是以 JSON 返回的数据库查询。也许在后端有两个操作 - 投票和刷新。

在投票方法中,首先检查选民当前的计数。如果还有票数,则冠军的分数上升或下降。

然后,返回这个数组:

  1. 列出项目
  2. 冠军投票
  3. 剩余票数
  4. 错误(如果存在)

在刷新方法中(每隔 x 秒或分钟轮询后端服务器)返回当前投票数。

相当简单的 ajax 实现。

希望这有帮助!


编辑:AJAX 学习链接

使用 jQuery,这非常非常简单。方法如下:

关于php - 实时 jQuery Ajax PHP 中的赞成或反对投票,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8733283/

相关文章:

php - 使用 jquery 传递选项选择变量

php - 将 php 字符串视为邮件 txt 附件

php - 打开: failed to open stream: No such file or directory - but file/directory exists

javascript - 如何使谷歌图表动态移动和更新

jquery - 如何知道所有ajax调用何时完成

javascript - 使用 AJAX 将模态表单数据发布到 php

php - Nginx,PHP-FPM,PHP Module and MySQL Implementation is possible in Kubernetes

javascript - 打印iframe内容

javascript - 将 javascript 参数字传递给自定义函数

javascript - 如何在div中打开链接?