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

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

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

Регистрация: Jun 2012
Сообщений: 142
По умолчанию массив URLVariables длиной в 1

Встала проблема, если URLVariables оказывается длиной 1,
то команда типа
Код AS3:
a=arr.x[i];
выдает ошибку, приходиться обращатся
Код AS3:
a=arr.x
Но когда идет большой обьем, то лень как то прописывать постоянно условие типа
Код AS3:
if(att.x.length ==1){a=arr.x}else {a=arr.x[i]}
Есть выход?

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

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
a=arr.x[i];
Что это вообще? Кэп мне подсказывает, что-то здесь не так )
И при чем тут массив? К URLVariables можно обращаться по ключам

Старый 03.03.2013, 21:55
fduch вне форума Посмотреть профиль Отправить личное сообщение для fduch Найти все сообщения от fduch
  № 3  
Ответить с цитированием
fduch

Регистрация: Jun 2012
Сообщений: 142
Код AS3:
public var loader:URLLoader;
public var load_unit:URLVariables = new URLVariables;
				var url:String = "http://bjiactb.60ru.com/unit.php";
				//var url:String = "http://bjiactb.60ru.com/unit_500mb.php";
				var request:URLRequest = new URLRequest(url);
				request.method = URLRequestMethod.POST;
 
				var save:URLVariables = new URLVariables();
				save.id = myid;
 
 
				request.data = save;
				//var loader:URLLoader = new URLLoader();
				loader = new URLLoader();
				loader.dataFormat = URLLoaderDataFormat.VARIABLES
 
 
				configureListeners(loader);
				try {
				loader.load(request);
				} catch (error:Error) {trace("Unable to load requested document.");}
 
				function configureListeners(dispatcher:IEventDispatcher):void {
				dispatcher.addEventListener(Event.COMPLETE, completeHandler);
				}
 
				function completeHandler(event:Event):void {
				//var loader:URLLoader = URLLoader(event.target);
				loader = URLLoader(event.target);
 
				//trace("completeHandler: " + loader.data);
				//var load:URLVariables = new URLVariables(loader.data);
				load_unit = loader.data;
загружаем данные с пхп.
в load_unit есть переменная k_x
Если их много, то они собираются в массив и обращаемся к ним : load_unit.k_x[i]
НО, когда он один load_unit.k_x[0] выдает ошибку! Обратиться можно только load_unit.k_x

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

Регистрация: Feb 2013
Сообщений: 176
так пых поди его и возвращает как переменную, когда k_x один

Старый 03.03.2013, 23:08
fduch вне форума Посмотреть профиль Отправить личное сообщение для fduch Найти все сообщения от fduch
  № 5  
Ответить с цитированием
fduch

Регистрация: Jun 2012
Сообщений: 142
Ну... А мне что делать? Ставить 1001 условие с проверкой длина один или не один???? Это бред имхо. Надо както по другому думать.
Пока придумал тока "левые" данные в базу загнать, чтобы никогда небыло 1 )) всегда 2
Но это колхоз

Старый 04.03.2013, 01:16
Sync вне форума Посмотреть профиль Отправить личное сообщение для Sync Найти все сообщения от Sync
  № 6  
Ответить с цитированием
Sync
 
Аватар для Sync

Регистрация: Feb 2013
Сообщений: 176
доступ к серверному коду у вас есть?

Добавлено через 6 минут
если нет, то сделайте при получении
Код AS3:
if(!(load_unit.k_x is Array)){
 var tmp:Array = new Array();
 tmp[0] = load_unit.k_x;
 load_unit.k_x=tmp;
}

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

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
Пока придумал тока "левые" данные в базу загнать, чтобы никогда небыло 1 )) всегда 2
Сервер ведь не самовольно выдает какие-то данные. Так вот почему бы не контролировать то, что он выдает еще в скрипте на сервере? Зачем выдавать данные как массив массивов с одинаковыми ключами?

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

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Цитата:
А мне что делать? Ставить 1001 условие с проверкой длина один или не один???? Это бред имхо. Надо както по другому думать.
Есть хороший тон - использовать try-catch.

Код AS3:
try
{
  // пробуем сделать, что хотим
}
catch(err:Error)
{
  // обрабатываем возникшую ошибку, если она произошла
}

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

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

Старый 04.03.2013, 18:57
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 10  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
трай - кетч, пфф, ну не скажу что это хороший тон. Скорее последний шаг безысходности.
В нормальных языках, в той же JAVA - это хороший тон
__________________
Марк Tween

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

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

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


 


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


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