【问题标题】:PHP code to write current score to MySQL database将当前分数写入 MySQL 数据库的 PHP 代码
【发布时间】:2017-06-06 00:35:39
【问题描述】:

我有一个网站,您需要在其中创建一个帐户并登录才能玩游戏。我有 PHP 引用 MySQL 数据库,其中有一列用于 UserId、Username、firstname、lastname、password 和 score。登录工作正常。然后,您将被带到包含游戏的 html 文档。它有点像 cookie clicker,您的目标是通过与对象交互获得最高分。

我有一个名为“clicks”的分数变量,它增加得非常快。

我有一些 javascript 代码可以读取;

if (clicks%5==0) {
    sendScore()
    } 

这意味着当点击被 5 整除时,它会激活一个名为 sendScore 的函数。它每 5 次增量激活一次函数,因为我假设每秒多次向表发送数据对服务器的要求过高。此函数会将当前玩家得分写入 MySQL 表中名为“score”的列,该列与玩家 UserID 相关。 UserID 是在创建帐户时生成的一个数字,以便可以轻松引用该用户的帐户。

我知道这只是我想多了,但我似乎无法编写一段 PHP 代码,我可以链接到 sendScore() 函数,该函数将玩家的当前分数('clicks' javascript 变量)发送到他们的分数列在 MySQL 数据库中。

任何帮助将不胜感激。

谢谢。

注意!!!!

发送信息的请求必须是 AJAX 请求。也许这就是它不起作用的原因。我习惯写表格,但表格会刷新页面。任何人都可以帮助编写针对这种情况的 AJAX 请求吗?

【问题讨论】:

标签: javascript php html mysql


【解决方案1】:

您当前的 sendScore 函数是什么? 如果没有更多代码,很难给出详细的答案,但我会尝试: 您的 sendScore 函数需要向处理该请求的 PHP 脚本发送请求。您可以使用纯 JavaScript 或 XMLHttpRequest 来做到这一点。更多信息在这里:http://blog.garstasio.com/you-dont-need-jquery/ajax/。但是,您也可以使用 jQuery 等框架来完成一些繁重的工作。更多关于 jQuery 和 AJAX 函数(特别是 post-requests)可以在这里找到:https://api.jquery.com/jQuery.post/

然后你需要一个可以处理请求的 PHP 函数。您必须将 JavaScript 函数(执行 POST 请求)指向该脚本的 URL。然后,您可以像处理“普通”表单一样处理 JavaScript 发送的信息。

要将您的值从 JavaScript 获取到 PHP,反之亦然,使用 JSON 可能是最简单的,因为如今 JavaScript 和 PHP 都可以很好地处理 JSON,而且比 XML 容易得多。

【讨论】:

  • 我正在寻找一个 AJAX 函数,但我似乎无法正确...如果你有时间,介意写代码吗?
  • 虽然我不打算编写完整的代码,但如果您现在发布更多代码,我可以包含一些更具体的指针和建议,以便您实现它,没问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-16
  • 2013-10-01
  • 2019-05-27
相关资源
最近更新 更多