Несоответствия интеграции PHP / Flash - PullRequest
0 голосов
/ 01 июля 2010

У меня возникли проблемы с согласованностью с моим приложением флэш-памяти, когда я выводил переменные для получения флэш-памяти, она не всегда улавливает то, что отправляет PHP, похоже, она меняется от ПК к ПК.

Я получаю информацию из базы данных, и мне нужно передать ее во флэш-память, скажем, например, мне нужно отправить через 5 переменных $ uid, $ name, $ points, $ from, $ page, как я могу это сделать отправлять их из PHP на флэш, используя AMFPHP?

Мне сказали, что AMFPHP будет лучшим инструментом для таких ситуаций, но я не знаю, как он работает, и пример кода на сайте не имеет для меня полного смысла.

Спасибо заранее!

Ответы [ 2 ]

0 голосов
/ 01 июля 2010

Вы не можете передать его из 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 голосов
/ 01 июля 2010

Кажется, что связываться с AMFPHP просто непросто, чтобы отправить пару переменных во флэш-файл. Я предлагаю вам попробовать:

  • Flashvars (хотя оно ограничено короткими переменными)
  • LoadVariables
  • XML (возвращая нужные значения в виде XML из PHP)

Все вышеперечисленное сработало для меня последовательно.

...