将变量从PHP脚本传递到Flash ActionScript 3.0?

时间:2011-08-27 21:41:55

标签: php actionscript-3 actionscript

我有一个在单独的PHP脚本上运行的图像上传器,然后在上传文件后更新预览URL。但我想要做的是将Flash SWF嵌入到运行PHP Uploader的相同HTML中,以获取该预览URL并将其显示在Flash应用程序中。

您认为将此PHP变量发送到Flash的最佳方法是什么?

提前致谢!

亚伦

2 个答案:

答案 0 :(得分:2)

您无法异步从PHP(服务器端)向Flash(客户端)发送值。您必须通过flashvar在嵌入时间传递它(虽然我怀疑这将在您的情况下工作,因为您希望在加载操作后发生此信息传输)或您的Flash应用程序将需要查询服务器,并且让服务器返回正确的值。

第三种选择是使用Flash中的ExternalInterface API,让HTML在URL可用时通过javascript通知Flash应用程序。

由于我不知道你的一般设置,因此很难推荐一种方式,但与其他方式相比的一般原因是:

  • 如果在加载嵌入HTML时已知该值,则选择 flashvar方法,以便您可以在初始化时将其传递给SWF,例如:使用查询字符串:myflash.swf?previewUrl =<?php echo $ previewUrl;?>
  • 如果您使用的是异步方法,则选择 ExternalInterface方法(因此无法进行上述操作),并且已通知您的应用程序的HTML / JS部分。这样您就可以在SWF嵌入DOM对象上调用javascript方法,并在ActionScript中接收它。
  • 如果以上方法均无效,请选择服务器查询方法,但您可以通过某种方式了解上传完成的时间。只需使用常规URLLoader查询服务器以获取预览URL,将文件ID或类似内容指定为GET或POST变量。

希望这会有所帮助。请详细说明您的架构的详细信息,以获得更全面的答案。

答案 1 :(得分:0)