Как передать массив в AS3 в массив в php? - PullRequest
1 голос
/ 11 марта 2010

У меня есть следующий массив as3 пример:

var arrayDefinitionsargsAmfPhp:Array = new Array();
arrayDefinitionsargsAmfPhp['tabela'] = "controls";
arrayDefinitionsargsAmfPhp['width'] = "100";

отправка его на удаленный объект по php, пример:

async = bridge.getOperation(amfphpFunction).send(arrayDefinitionsargsAmfPhp);

В php я пытаюсь получить массив следующим образом:

function retornamenu($tableInBd)
{

$arr = array($tableInBd);

$tableInBdname = $arr['tabela'];

$widthInBdname = $arr['width'];

Но, к сожалению, эти переменные $ tableInBdname и $ widthInBdname не приходят в php, может кто-нибудь помочь мне с примером?

Спасибо уже

Ответы [ 3 ]

0 голосов
/ 11 марта 2010
[Bindable] public var rows2:Object = new Object();

Содержит все данные в объекте row2 и отправляет их в PHP.

rows2=Application.application.whateverStuff;

<mate:eventProperties>
<mate:EventProperties rows2="{rows2}"/>  
</mate:eventProperties>

Теперь в свойствах Event вы получаете row2, который вы отправляете в PHP через Remoting.

    public function yourPHP($data)
     {
     //return print_r($data,true); 
     if(!$data || !is_array($data)|| !sizeof($data)){throw new Exception("No data sent.".(is_object($data)?"y":"n"));}
     //throw new Exception(print_r($data,true));
     array_shift($data);//get rid of the first row
     foreach($data as $row)
     {
           Now perform your manipulation here.

        }
}
0 голосов
/ 12 марта 2010

ответ в порядке, решение:

PHP

    function retornamenu($tableInBd)
{ 

$tableInBdname = $tableInBd['tabela'];

$mensagem = $tableInBd['mensagem'];

AS3

var arrayDefinitionsargsAmfPhp:Array = new Array();
arrayDefinitionsargsAmfPhp['tabela'] = "controls";
    arrayDefinitionsargsAmfPhp['mensagem'] = "este sao dados que vierem via array do as3";

async = bridge.getOperation(amfphpFunction).send(arrayDefinitionsargsAmfPhp);

спасибо

0 голосов
/ 11 марта 2010

Вы можете отправить, сопоставив значения в виде URLVariables / ..

var variables:URLVariables = new URLVariables();
variables.NAME = "Hello";
variables.EMAIL = "Hello@Hello.com"

var request:URLRequest = new URLRequest("sentFromFlex.php");
request.data = variables;
request.method = URLRequestMethod.POST;
sendToURL(urlrequest);

и в PHP вы можете получить эти переменные в массиве $ _POST ..

echo $_POST['NAME'];
echo $_POST['EMAIL'];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...