【问题标题】:Saving data from AS3 to database.. what is the best method?将数据从 AS3 保存到数据库.. 最好的方法是什么?
【发布时间】:2011-10-23 20:48:19
【问题描述】:

我正在使用 Flash 开发一个两人回合制游戏,我需要将数据保存到数据库中。

目前我正在使用 AMFPHP。效果很好。

问题是我开始有很多信息 - 不同种类的小东西,如 x、y、hp、路径、activeskills 等。每次我添加一些东西时,我都必须将其编码到 AS 和 PHP 并修改数据库结构。

那么有更好的解决方案吗?

我很想将 AMF 数据包从 flash 发送到 PHP 并将其保存到 DB。其他玩家可以从 DB 加载这个 AMF 数据包..但我想这是不可能的。无法从网络上找到任何可行的解决方案。

**对我来说理想的数据库结构是:

id,gameId,gameData

那么我应该如何将所有数据“压缩”到 'gameData'?** 数组、amf、字符串..

【问题讨论】:

    标签: database flash actionscript-3 amf amfphp


    【解决方案1】:

    AMF 不是问题:事实上,您还没有完成您的应用程序,并且您正在寻求使用否定 AMF 提供的大部分好处(例如强类型)的快捷方式。

    您需要最终确定交换/保存所需的参数,规范化该数据的存储并相应地更新您的 AMF 类。

    【讨论】:

    • 这是绝对真理。但是话又说回来,我真的不明白写几百行代码的意义——只是为了传输数据。现在,当我能够发送 VO - 我想这是正确的术语 :) - 我可以专注于完成我的应用程序而无需担心。我喜欢有自适应核心 - 如果这有任何意义:)
    【解决方案2】:
    • 您可以将二进制文件保存到 SQL DB。例如,MySQL 有一个字段类型为BLOB 来保存您的数据对象。我只是不记得数据对象在通过 AMFPHP 传输时是否会自动序列化,或者您是否需要进行一些序列化。
    • 您可以通过Base64 对数据对象进行编码并将其保存到SQL DB。
    • 我能想到的最优雅的解决此问题的方法是将 gameData 编写为 JSON 格式化字符串。

    【讨论】:

    • 谢谢!二进制是我试图理解的解决方案的关键字。花了一段时间'cos amfphp 2 似乎有 ByteArray 的错误,所以我不得不降到 1.9。
    猜你喜欢
    • 2013-04-05
    • 1970-01-01
    • 2016-05-19
    • 1970-01-01
    • 2016-09-30
    • 1970-01-01
    • 2016-09-02
    • 1970-01-01
    • 2010-10-16
    相关资源
    最近更新 更多