PHP / Flash集成不一致

时间:2010-07-01 07:34:46

标签: php mysql flash amfphp

我的flash应用程序存在一些一致性问题,当我回显flash的变量时,它并不总是能找到PHP发送的内容,它似乎因PC而异。

我从数据库获取信息,我需要将其传递给flash,比如说我需要发送5个变量$ uid,$ name,$ points,$ from,$ page,我怎么能去使用AMFPHP将这些从PHP发送到闪存?

我被告知AMFPHP将是用于此类情况的最佳工具,但我不了解它是如何工作的,并且网站上的示例代码对我来说并不完全合理。

提前Thanx!

2 个答案:

答案 0 :(得分:0)

参与AMFPHP只是为了将一些变量发送到flash文件似乎很麻烦。我建议你试试:

  • Flashvars(虽然它只限于短变量)
  • 的loadVariables
  • XML(从PHP返回所需的值)

以上所有这些对我来说都是一贯的。

答案 1 :(得分:0)

您无法将其从PHP推送到Flash - 通信必须由Flash端启动。你不需要AMFPHP;只需使用URLLoader

var ldr:URLLoader = new URLLoader();
ldr.addEventListener(Event.COMPLETE, onLoad);
ldr.load(new URLRequest("page.php"));

function onLoad(e:Event):void
{
  var loadedText:String = URLLoader(e.target).data;
  /**
   * Following will throw error if the text 
   * is not in the format `a=something&b=something%20else`
   * */
  var data:URLVariables = new URLVariables(loadedText);
  for(var t:Object in data)
    trace(t + " : " + data[t]);
}

page.php内,只需做一个简单的回音:

//don't forget to urlencode your variables.
echo "uid=$uid&name=$name&points=$points";