PDA

Просмотр полной версии : PHP Array to AS3


metsys
28.02.2011, 16:36
собственно вроде как разобрался как гонять переменные с флеша в пхп и назад. Вот только никак не могу понять как быть с масивами?

вот к примеру есть в флешке два текстоввых поля в которые я ввожу числа. Отправляю эти числа в пхп, он сумирует и возвращает ответ в третье текстовое поле во флеше.
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.net.URLRequestMethod;
import flash.net.URLVariables;

public class AS3_PHP_AS3 extends Sprite
{
private var _url:String="http://www.wereewe.ru/klm.php";

public function AS3_PHP_AS3()
{
okBTN.addEventListener(MouseEvent.MOUSE_DOWN, sendVars);
}


private function sendVars(e:MouseEvent):void
{
var v:URLVariables = new URLVariables();
v.number1=int(num_1TXT.text);
v.number2=int(num_2TXT.text);

var req:URLRequest = new URLRequest(_url);
req.method = URLRequestMethod.POST;
req.data=v;

var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE, onComplete);
loader.load(req);
}


private function onComplete(e:Event):void
{
try
{
//var vars:URLVariables=new URLVariables(e.target);

trace("Успешно получен ответ: " + e.target.data);
sumTXT.text = e.target.data;
}
catch (e:TypeError)
{
trace("Не могу получить ответ от сервера.");
}

}
}
}

ну и код пхп:
<?php

$num1 = $_POST['number1'];
$num2 = $_POST['number2'];

$ans = $num1 + $num2;

echo $ans;
?>



а вот если я хочу отправить массив и получить массив. С типизированными данными а не строку. Таковое возможно и как это сделать??

scarbo
28.02.2011, 17:21
Amf, например используя либу AmfPhp (http://amfphp.sourceforge.net/)

metsys
28.02.2011, 17:27
а на сколько эта штука шустрая, если её использовать скажем для больших проектов?

andrew911
28.02.2011, 18:21
JSON
или
http://actualwave.com/blog/?p=91

scarbo
28.02.2011, 19:08
а на сколько эта штука шустрая, если её использовать скажем для больших проектов?
Нормально, можно передавать даже сереализованные данные кастомных классов, очень удобно.