从 PHP 获取信息到 HTML5 JavaScript 游戏

Posted

技术标签:

【中文标题】从 PHP 获取信息到 HTML5 JavaScript 游戏【英文标题】:Getting information from PHP into HTML5 JavaScript Game 【发布时间】:2013-05-13 18:21:54 【问题描述】:

我一直在玩弄 JS/Node/Socket.IO 并制作了一个小型多人游戏,其中你都是点并且可以四处移动。我现在想更进一步,添加一个简单的登录系统,以便我可以在用户头顶显示来自用户登录的信息,以帮助识别不同的玩家。

现在我知道 php 是一种服务器端语言,而 javascript 主要是客户端语言,但我需要想出一种方法来做到这一点。我真正要问的是,有人知道如何将信息直接从 PHP 获取到 JavaScript 中吗?

稍后我可能想要添加等级并将玩家的关卡存储在数据库中,并在他们连接时检索它们(而不是使用本地存储)。

非常感谢!

乔尔

【问题讨论】:

来自客户端的 AJAX 请求和 PHP 中的 json_encode() 是你的朋友。除此之外,您还必须更具体地说明您要做什么。 【参考方案1】:

您可以使用 PHP 编写 JavaScript。

例如

   $jsVars = array(
      "one" => "hello"
   ,  "two" => "yo"
   );

   echo '<script type="text/javascript">';
   echo "var phpVars = ".json_encode($jsVars);
   echo "</script>";

或者您可以利用 ajax 向 PHP 发出请求并通过 JSON 传递数据。

【讨论】:

非常感谢George,这么简单的概念让我忘记了!但有一件事,这是一种有效的做事方式吗?假设我要使用 html5 技术构建一个 MMORPG,平均每天有 50,000 名玩家,这会是一个好方法吗? @jskidd3 这实际上取决于您要传输的数据类型。我个人会使用 ajax,但如果这不是一个选项,这也可以。 @jskidd3 没问题,就像 Soriyyx 说的我绝对推荐 jQuery 来处理 ajax。 Ajax 作为长期解决方案更容易维护。你想看看用 PHP 构建一个 API,这样你就可以轻松地获取正确的数据。因此,对于用户信息,您将向 URL“yoursite.com/api/userinfo”发出请求,它将返回您的 javascript 所需的所有用户信息。这就是 Twitter 等网站允许人们获取推文的方式 .etc【参考方案2】:

我通常这样做:

<script type="text/javascript">
    var name = '<?php echo $name; ?>';
</script>

当然是在 PHP 文件中。我认为这对于服务器来说比使用 php 创建整个 javascript 更容易。

【讨论】:

【参考方案3】:

如果您想在不加载页面的情况下提取数据。您可以使用 AJAX 调用一个 php 脚本来回显您需要的数据。您可以在成功登录 php 后将用户名存储在会话变量中,然后在需要时将其回显。

一个基本的 vanilla JS 示例是;

function getUsername()

   var xmlhttp;

   if(window.XMLHttpRequest)
   xmlhttp=new XMLHttpRequest();
   

   else
   xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
   

   xmlhttp.onreadystatechange=function()

      if(xmlhttp.readyState==4 && xmlhttp.status==200)
      var username=xmlhttp.responseText;
      // code to add username above player here
      

   

   xmlhttp.open("GET","get_username.php",true);
   xmlhttp.send();


编辑:没关系。 :D

【讨论】:

以上是关于从 PHP 获取信息到 HTML5 JavaScript 游戏的主要内容,如果未能解决你的问题,请参考以下文章

html5,js,jq指南针源码,当前位置获取,经纬度信息获取

从 iOS 安全发送 PHP 获取信息

「GIS教程」使用HTML5获取设备的方向信息

php代码如何实现扫描二维码获取扫描者的信息

php怎么从数据库里获取到值在html页面上输出?

PHP, Html5, xampp