Web RPG - 存储对话框

时间:2013-07-29 17:05:47

标签: php javascript mysql

我想用JavaScript创建一个RPG。 RPG中会有很多对话框。我听过XML is the way to go...,但我没有使用XML的经验,也没有使用PHP和MySQL的丰富经验。

我的问题是:

  • 将对话存储在MySQL数据库中并使用ID使用PHP访问它会更好吗?或者我应该通过使用Javascript访问XML文件将其全部保留在前端?
  • 如果我使用XML,我是否需要在网络服务器上运行javascript(如WAMP)?或者我可以在本地解析它:

    function parseXML() {
        xmlhttp=new window.XMLHttpRequest();
        xmlhttp.open("GET","dialog.xml",false);
        xmlhttp.send();
        xmlDoc=xmlhttp.responseXML;             
    }
    

(目前正在提供错误XMLHttpRequest cannot load file:///C:/Users... Cross origin requests are only supported for HTTP.

  • 即使阅读了XML,我仍然不确定如何将其与JavaScript集成。有人可以帮我举一个例子,说明我如何采用示例rpg XML对话框并在JavaScript中有意义地解析它?

谢谢

3 个答案:

答案 0 :(得分:3)

为什么不使用JSON?从JavaScript代码中使用起来要容易得多。当你在这里时,请手动避免使用XMLHttpRequest,并使用一些库为你处理坏事(例如,jQuery)。

对于“对话框”部分,我不确定你将使用MySQL。无论如何,只要您的PHP脚本为客户端代码提供格式良好的回复,您就可以在服务器端使用任何形式的存储。

答案 1 :(得分:2)

  

将对话框存储在MySQL数据库中并访问它会更好吗?   用PHP使用ID?或者我应该把它全部保留在前端   使用Javascript访问XML文件?

在这里拥有数据库的主要优点是您可以获得很大的灵活性。您可以非常轻松地创建/编辑/删除对话及其关系,而无需每次都维护/重新生成大型数据文件(正如您选择的XML或JSON或w / e形式)。

另一方面,如果你只是简单的对话没有关系和有限的内容,这个解决方案可能会有点过分。

由于您即将使用Javascript进行游戏,并且如果您的内容变化不大,您可以考虑对话的JSON编码。您可以通过Javascript立即解析数据,并且仍然可以像在XML中那样在对话之间建立所有类型的复杂关系。

  

如果我使用XML,是否需要在网络服务器上运行javascript(如WAMP)?或者我可以在本地解析:...

您遇到此错误,因为您确实需要在此处运行服务器。如果你只是想做一些测试,不需要使用WAMP或任何大型网络服务器,只需要运行一个python服务器,这样就可以了。

cd /yourProject
python -m SimpleHTTPServer

让服务器运行并打开浏览器:

http://127.0.0.1:8000

答案 2 :(得分:0)

为输入文件指定基本网址http://localhost/rpgame/dialog.xml