Форум 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)
-   -   Проблемы с loadvariables (http://www.flasher.ru/forum/showthread.php?t=132455)

Hankuk 12.11.2009 10:51

Проблемы с loadvariables
 
День добрый! Не могу поймать значение переменной, которую я получаю через LoadVariables. В файле result.txt значение переменной указано, более того при отладке в watch, я вижу ее правильное значение, но при trace(gorod1+" данные"), выдает undefined.

var gorod:String;
loadVariables("result.txt", "_root");
trace(gorod1+" данные");
gorod = gorod1;

Структура result.txt:
gorod1=rostov

mooncar 12.11.2009 10:56

Ничего удивительного. Такая рухлядь, как loadVariables по другому работать не будет.
AS работает асинхронно, вы трейсите переменную, а ведь она еще не загрузилась, потому и undefined.
Используйте уже, наконец, класс LoadVars и используйте его метод onLoad.
И код на форуме оформляйте тегами.

Hankuk 12.11.2009 11:07

В том то и дело, что с LoadVariables сайт работал несколько лет, а теперь возникла ситуация, что у 80% этот метод работает, а у 20% не работает.... Вот и пытаюсь наити траблу.

mooncar 12.11.2009 11:10

Как работал LoadVariables раньше, судить не могу, так как флешем недавно стал заниматься. Но если хотите решать проблему, перепишите код с использованием LoadVars.
Вероятно, обновились плееры, и теперь все стало строже проигрываться.
Работы на 10 минут - вместе с изучением одного примера из хелпа, компиляцией и заливкой.

Добавлено через 5 минут
Код AS1/AS2:

var lv:LoadVars = new LoadVars();
lv.onLoad = function(success:Boolean) {
        if (success) {
                gorod = this.gorod1;
                trace(gorod);
        }
};
lv.load('result.txt');

Естественно, все операции с gorod можно производить только изнутри onLoad.

Hankuk 12.11.2009 11:33

Спасибо, через 10 мин отпишу :)

Добавлено через 4 часа 43 минуты
Передаю так:
Код AS1/AS2:

var simple_lv:LoadVars = new LoadVars();
mb_rostov.onRelease = function() {
 
                simple_lv.Name = 'rostov';
                simple_lv.sendAndLoad("result.txt", simple_lv,"POST");
                simple_lv.onLoad = function(success:Boolean) {
                        if(success){
                                trace("загружено");
                            getURL("region.html");
                                }else {
                                        trace("error");
                                        }
                                }
 
                }

Принимаю так:
Код AS1/AS2:

var gorod:String = new String();
var simple_lv:LoadVars = new LoadVars();
 
simple_lv.load("result.txt");
simple_lv.onLoad = function(success:Boolean) {
        if(success){
                w1.contentPath = "prognoz/"+_gorod+"/"+_gorod+".jpg";
                }        else{
                trace("error");
                }
        }

Какую структуру должен иметь файл result.txt, что то не получается никак...


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

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