2010-07-01 19 views
0

我的闪存应用程序存在一些一致性问题,当我回显变量以获取闪存时,它并不总是选择PHP发送的内容,它似乎因PC而异。PHP/Flash集成不一致

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

有人告诉我,AMFPHP可能是用于这种情况的最佳工具,但我对它的工作原理并不了解,并且网站上的示例代码对我没有完全意义。

Thanx提前!

回答

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"; 
0

看起来很麻烦参与AMFPHP只是发送一些变量到Flash文件。我建议你试试:

  • Flash变量(尽管它是一种仅限于短期变量)
  • 的loadVariables
  • XML(返回你需要从PHP的XML值)

所有的上面一直为我工作。