Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 14.10.2011, 18:42
zigfridus вне форума Посмотреть профиль Отправить личное сообщение для zigfridus Найти все сообщения от zigfridus
  № 1  
Ответить с цитированием
zigfridus

Регистрация: Sep 2011
Сообщений: 24
По умолчанию Загрузка в ArrayCollection данных из PHP

Добрый день.

Непонятная вещь происходит. Получаю из PHP данные в виде:
Код AS3:
<?xml version='1.0' encoding='utf-8'?>
<groups>
<record><idgroup>1</idgroup><groupname>administrators</groupname></record>
<record><idgroup>2</idgroup><groupname>users</groupname></record>
</groups>
Если в полученных данных записей record две и больше, то в программе
Код AS3:
var arCol:ArrayCollection;
arCol = event.result.groups.record as ArrayCollection;
переменная arCol получает правильные данные, но если запись record только одна, то arCol почему-то остается равным null.

Подскажите, почему такое происходит?

Старый 14.10.2011, 18:58
Genzo вне форума Посмотреть профиль Отправить личное сообщение для Genzo Посетить домашнюю страницу Genzo Найти все сообщения от Genzo
  № 2  
Ответить с цитированием
Genzo
 
Аватар для Genzo

блогер
Регистрация: Feb 2010
Адрес: MSK
Сообщений: 859
Записей в блоге: 3
Отправить сообщение для Genzo с помощью ICQ Отправить сообщение для Genzo с помощью Skype™
event.result какой тип данных у вас и как вы к нему приводите xml?
__________________
Gamedev != Gaming (http://twitter.com/#!/GenzoDev). Don't forget to [+] if it works.

Старый 14.10.2011, 19:22
zigfridus вне форума Посмотреть профиль Отправить личное сообщение для zigfridus Найти все сообщения от zigfridus
  № 3  
Ответить с цитированием
zigfridus

Регистрация: Sep 2011
Сообщений: 24
Цитата:
Сообщение от Genzo Посмотреть сообщение
event.result какой тип данных у вас и как вы к нему приводите xml?
При помощи:
Код AS3:
<s:HTTPService id="phpGroupsSelect" result="resultHandlerGroupsSelect(event)" url="http://localhost/access/selectGroups.php"/>
отправляю запрос на сервер.

Получаю результат в функции resultHandlerGroupsSelect и там же их обрабатываю:
Код AS3:
private function resultHandlerGroupsSelect (event:ResultEvent):void  {
var arCol:ArrayCollection;
arCol = event.result.groups.record as ArrayCollection;
}

Старый 14.10.2011, 19:50
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 4  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
event.result.groups.record это по идее XMLList
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 14.10.2011, 20:18
zigfridus вне форума Посмотреть профиль Отправить личное сообщение для zigfridus Найти все сообщения от zigfridus
  № 5  
Ответить с цитированием
zigfridus

Регистрация: Sep 2011
Сообщений: 24
Цитата:
Сообщение от GBee Посмотреть сообщение
event.result.groups.record это по идее XMLList
а XMLList как-то по-другому загружается в ArrayCollection?

Старый 14.10.2011, 21:07
Inet_PC вне форума Посмотреть профиль Отправить личное сообщение для Inet_PC Посетить домашнюю страницу Inet_PC Найти все сообщения от Inet_PC
  № 6  
Ответить с цитированием
Inet_PC
 
Аватар для Inet_PC

Регистрация: Feb 2009
Адрес: Гы...поди, найди!
Сообщений: 853
Записей в блоге: 1
Может:
Код AS3:
new ArrayCollection(event.result.groups.record);
не?

Добавлено через 1 минуту
P.S. Тема явно не в том разделе.
__________________
http://www.chessmax.ru

Старый 14.10.2011, 21:51
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 7  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Цитата:
а XMLList как-то по-другому загружается в ArrayCollection?
Я руками парсю если надо в нормальные объекты
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 17.10.2011, 14:10
zigfridus вне форума Посмотреть профиль Отправить личное сообщение для zigfridus Найти все сообщения от zigfridus
  № 8  
Ответить с цитированием
zigfridus

Регистрация: Sep 2011
Сообщений: 24
Цитата:
Сообщение от Inet_PC Посмотреть сообщение
Может:
Код AS3:
new ArrayCollection(event.result.groups.record);
не?

Добавлено через 1 минуту
P.S. Тема явно не в том разделе.
Та же проблема: при преобразовании только одной записи из XMList в ArrayCollection выдается ошибка
Error #1034: Ошибка типа Coercion: невозможно преобразовать mx.utils::ObjectProxy@5076281 в mx.collections.ArrayCollection.

Если две записи, то преобразование происходит успешно.

Мистика какая-то.

Старый 17.10.2011, 14:36
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 9  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Нет мистики
если две записи, то Array, а одна ObjectProxy
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 17.10.2011, 14:48
Inet_PC вне форума Посмотреть профиль Отправить личное сообщение для Inet_PC Посетить домашнюю страницу Inet_PC Найти все сообщения от Inet_PC
  № 10  
Ответить с цитированием
Inet_PC
 
Аватар для Inet_PC

Регистрация: Feb 2009
Адрес: Гы...поди, найди!
Сообщений: 853
Записей в блоге: 1
Код AS3:
var arCol:ArrayCollection;
if (event.result.groups.record is Array) 
{
 	arCol = new ArrayCollection(event.result.groups.record as Array);
}
else
{
	arCol = new ArrayCollection([event.result.groups.record]);
}
__________________
http://www.chessmax.ru

Создать новую тему Ответ Часовой пояс GMT +4, время: 19:11.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 19:11.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.