Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Подскажите с загрузкой данных (http://www.flasher.ru/forum/showthread.php?t=181636)

kellua 28.06.2012 13:45

Подскажите с загрузкой данных
 
Есть код загружающий переменные из PHP

Код AS1/AS2:

stop(); 
var MyVars= new LoadVars();
MyVars.onLoad = function(ok) {
 if (ok) {
id1 = this.id1;
id2 = this.id2;
id3 = this.id3;
id4 = this.id4;
-----------------
idn = this.idn;
 
_root.gotoAndPlay(2);
  } else {
      text="Error loading variables";
    }
};
MyVars.load("http://xxx.ru/xxx.php");

Этих ID может быть как 10, так и 50 и более, в зависимости от кол-ва строчек в базе.
В данном коде указываю ограниченное кол-во Id. А как сделать чтобы загружалось столько переменных, сколько выдаст php (одну или сотню)???...

mooncar 28.06.2012 14:01

Попробуйте так (метод не очень рациональный, но должен работать):

Код AS1/AS2:

stop(); 
 //сюда занесем получаемые id, в качестве индексов элементов будут строки "id1", "id2"....
//а значения элементов - полученные значения
var idArray:Array = [];
 
var myVars:LoadVars = new LoadVars();
myVars.onLoad = varsOnLoad;
myVars.load('http://xxx.ru/xxx.php');
 
function varsOnLoad(ok:Boolean)
{
        if (ok)
        {
                for (i in this)
                {
                        if (substring(i, 0, 2) == 'id')
                        {
                                _root.idArray[i] = this[i];
                        }
                }
                _root.gotoAndPlay(2);
        }
        else
        {
                text_field.text = 'Error loading variables';
        }
};

Не проверял.

Удобнее использовать ассоциативный массив для хранения id.
Вообще, можно и обычный, с номерными индексами, если неважно, как элементы массива будут называться.

kellua 28.06.2012 14:11

как раз таки важно как будут называться элементы массива....

mooncar 28.06.2012 14:14

Пересмотрите мой код выше, я там ошибки нашел, исправил.

Цитата:

Сообщение от kellua (Сообщение 1086397)
как раз таки важно как будут называться элементы массива....

Ну смотрите сами.
В приведенном выше примере обращение будет выглядит так:
Код AS1/AS2:

idArray['id1']
idArray['id2']
...

если делать неассоциативный, то просто:
Код AS1/AS2:

idArray[1]
idArray[2]
...



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

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