Как сделать возврат из PHP Заполнение данных MXML Flex mx: List (Использование actionscript и PHP) - PullRequest
0 голосов
/ 10 марта 2010

Я использую Flex 3 и apache с PHP 5.2.

Я ищу простой способ заполнить свой mx: List данными, используя POST URLRequest.

В Flex Builder я использую следующий код

public var variables_se:URLVariables = new URLVariables();
public var varSend_se:URLRequest = new URLRequest("DataProvider.php");
public var varLoader_se:URLLoader = new URLLoader;

public function starter():void
{
varSend_se.method = URLRequestMethod.POST;
varSend_se.data = variables_se;
varLoader_se.dataFormat = URLLoaderDataFormat.VARIABLES;
varLoader_se.addEventListener(Event.COMPLETE, completeHandler_se);
variables_se.CountOflistItemsIWant = 30;
varLoader_se.load(varSend_se);
}

public function completeHandler_se(event:Event):void
{
    textFild.text += " " + String(event.target.data) + ";"; // any result will apear in some textFild
// How to make result appear as list lines, how to form PHP answer and AS3 code for it?
}

Как сделать так, чтобы результат отображался в виде строк списка, как сформировать PHP-ответ и AS3-код для него (если, например, я хочу вернуть случайные числа из PHP в нужное значение в CountOflistItemsIWant cuatety)?

Ответы [ 2 ]

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

ИМХО это большой архитектурный вопрос. Вот варианты:

  1. Создайте веб-сервис RESTful и сделайте так, чтобы он выводил данные в некотором текстовом формате (XML или JSON). Вы можете использовать объекты HttpService во Flex, чтобы сделать запрос к вашему PHP-полноценному веб-сервису и соответственно установить обработчики результатов и ошибок. Вот быстрый старт: http://www.adobe.com/devnet/flex/quickstart/httpservice/

  2. Если вам нужно удаленно связать объекты между Flex и PHP, AMFPHP можно использовать: http://www.amfphp.org/

  3. Вы можете создать веб-сервис SOAP на PHP, некоторые ссылки ... http://developer.apple.com/internet/webservices/soapphp.html http://php.net/manual/en/book.soap.php ... и использовать объект Flex WebService для выполнения вызовов: http://livedocs.adobe.com/flex/3/html/data_access_3.html

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

Может быть, вы могли бы сделать так, чтобы ваш php-скрипт отображал кодированный в json массив так:

<?php
echo json_encode(array('first', 'second', 'foo', 'bar'));

и в flex получить его, декодировать и использовать в качестве аргумента для провайдера данных массива для вашего mx: List

Вы можете найти информацию о связи между php и flex с использованием json здесь: http://www.adobe.com/devnet/flex/articles/flex_php_json.html

...