使用ActionScript 3连接数据库

时间:2020-03-05 18:53:28  来源:igfitidea点击:

我正在寻找有关如何基于数据库在Flash中动态创建内容的建议。最初,我以为我们会将数据库导出到XML文件,并使用内置的Actionscript XML解析器来解决这个问题,但是XML文件的大小可能会被禁止。

我已经读过有关使用中间步骤(PHP,ASP)来检索信息并将其作为Actionscript可以读取的内容传递回去的信息,但是我不希望这样做。以前有人使用过asSQL库吗?还是我还缺少其他东西?

解决方案

回答

如果计划将Flash内容部署到网站,则应使用某种后端,否则可能会出现安全问题。我在AMFPHP上使用了远程处理,效果非常好。

回答

除非我们在服务器端运行Actionscript(我对此表示怀疑),否则直接连接到数据库根本不是很明智。要从客户端Actionscript连接到数据库,我们必须打开服务器以接受所有人的数据库连接,并且必须将访问数据存储在swf文件中,如果有人反汇编swf,这将是灾难性的组合文件。

如果XML的大小过大,则可以随时进行拆分,或者如果不可能,则可以通过PHP或者服务器上运行的任何其他方法从服务器获取数据,例如,我们可以提供相关参数在对PHP文件和服务器端脚本的请求中,然后查询数据库,构建XML文本(基于给定的参数,它是完整数据的子集),可以由Actionscript使用。

回答

我所经历的一般做法是,如果它是诸如配置文件之类的东西,或者只是少量数据,那么我们可能只需要将XML文件与SWF文件一起放在服务器上就可以摆脱困境。

如果我们希望数据更具动态性或者希望经常更改它,那么我绝对会按照Nouveau所说的那样做,并使用PHP或者类似技术将数据库查询输出到XML结构中,以供Flash加载。

但是,如果有大量数据,并且我们确实注意到程序阻塞或者滞后于以这种格式加载XML,我肯定会像Kristian所建议的那样建议进行远程处理,AMFPHP似乎是最受欢迎的选择之一。

查看grapefrukt对另一个有关闪存和数据库交互的问题的答案
Adobe Flash是否支持数据库?

回答

以防万一某人不认识午夜编码员,他们还有一种健壮的方式来处理Flash

回答

我们也可以使用swx格式,这是一个非常有趣的项目,可以使用swf的包装程序发送/接收数据,我个人更喜欢amfphp,但我在这里仅作参考之用

回答

除非我们对将连接字符串暴露给任何人的想法感到满意,否则不要使用客户端Actionscript直接连接到数据库。

而是使用一些服务器端逻辑来连接到数据库。