首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调用javascript时从mysql数据库中选择

问调用javascript时从mysql数据库中选择
EN

Stack Overflow用户
提问于 2012-04-24 21:21:39
回答 2查看 9.7K关注 0票数 1

我有一个用PHP和Javascript/jQuery构建的小web应用程序。

这个应用程序包含一个随机数生成器,当它落在数字4上时,用户就赢了。

然而,奖品是从数据库中提取出来的,每天5个奖品之后就会中奖。用户无法获胜。

一旦用户中奖,奖品将被更新为“排队”,直到他们填写了表格并领取了奖品。然后从可用的奖品中取出。

如果用户刷新应用程序,这一切都工作得很好。然而,如果一个用户开始玩应用程序,而另一个用户赢了,那么应用程序将不会更新,除非它被刷新,因为PHP是服务器端。

我有一个javascript函数OnStart。因此,如果我可以在这里执行SQL查询,那么每次用户抛骰子时都会发生这种情况。

如何从jquery函数运行php语句?

如果有帮助,下面是这条语句:

代码语言:javascript
复制
$result = mysql_query("SELECT * FROM prizes WHERE dateavailable='$todayDate' AND queue='0' AND won='0' ORDER BY id ASC LIMIT 1");

while($row = mysql_fetch_array($result))

{   
    $prize = $row['prize'];
}

谢谢

编辑:

所以我可以在一个单独的文件中对php使用类似这样的东西吗?

代码语言:javascript
复制
<script type="text/javascript">
  function performAjaxSubmission() {
    $.ajax({
      url: 'file.php',
      method: 'POST',
      data: {
        action: 'save',
        arg1: 'val1',
        arg2: 'val2'
      },
      success: function() {
        alert("success!");
      }
    });
    return false; // <--- important, prevents the link's href (hash in this example) from executing.
  }

  jQuery(document).ready(function() {
    $("#linkToClick").click(performAjaxSubmission);
  });
</script>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-24 21:39:30

将发布的代码保存在一个php文件中,让我们将其命名为prizes_available.php。此文件还应输出奖品是否可用,因此创建result对象并为其赋值:

代码语言:javascript
复制
$result = new stdclass();
$result->prizes_available = $prize != null;
echo json_encode($result);

如果你在浏览器中调用这个脚本,它将输出如下所示:

代码语言:javascript
复制
{ prizess_available: true }

使用jQuery,您可以轻松地将此字符串再次转换为对象:

代码语言:javascript
复制
$.getJSON('prizes_available.php', function(result)  {
    if (!result.prizes_available) {
        alert('no more prizes');
    }
});
票数 1
EN

Stack Overflow用户

发布于 2012-04-24 21:33:02

你必须使用AJAX,jQuery包含一些简单易用的函数来处理AJAX。

用法很简单,你可以在docs.jquery.com上读到

如果希望将一些数组传递给js脚本,请查找JSON函数(在jQuery中为$.getJSON,在PHP中为json_decode / json_encode )。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10298737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档