Неправельное отображение переменной

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в IFrame-приложениях (JavaScript, PHP и т.д)
Ответить
kahoxa
Сообщения: 59
Зарегистрирован: 10 фев 2012, 17:09

Неправельное отображение переменной

Сообщение kahoxa »

Вот код, если при загрузке хмл в поле user_id я пишу число, то все работает,он загружает данные и отображает. Но если использую переменную взятую с вк апи (переданную через flashvars) то не работает(
переменная _root.user_id отображается нормально !
Код AS2:

Код: Выделить всё

 stat=new XML();stat.load("http://site/folder/xml.php?user_id="+parseInt(_root.user_id),"GET");stat.onLoad=function(){   _root.lvl=stat.childNodes[1].firstChild.nodeValue;_root.max_score=stat.childNodes[2].firstChild.nodeValue;_root.score=stat.childNodes[3].firstChild.nodeValue;createTextField("s1",4452,1,82,125,18);createTextField("se",1,10,440,80,30);se.size=11;se.text=_root.lvl;s1.text=_root.score + "/" + ((10000*_root.lvl)+(_root.lvl*10000));
Подскажите в чем дело?
что не так с этой строчкой?
Код AS2:

Код: Выделить всё

stat.load("http://site/folder/xml.php?user_id="+parseInt(_root.user_id),"GET");
sanych_dv
Разработчик
Разработчик
Сообщения: 550
Зарегистрирован: 29 апр 2011, 01:52

Re: Неправельное отображение переменной

Сообщение sanych_dv »

Зачем вы приводите строку _root.user_id к числу parseInt(_root.user_id) , если первый аргумент функции load является строкой? Получается ненужное двойное преобразование типов. Если уж явно объявлять тип, то только к строке:

Код: Выделить всё

 var stat:XML = new XML;stat.ignoreWhite=true;stat.load(String("http://site/folder/xml.php?user_id=" + _root.user_id), "GET"); 
kahoxa
Сообщения: 59
Зарегистрирован: 10 фев 2012, 17:09

Re: Неправельное отображение переменной

Сообщение kahoxa »

Но это не решает проблемы,

на этом моменте:
Код AS1/AS2:

Код: Выделить всё

 stat.load("http://site/folder/xml.php?user_id="+_root.user_id,"GET");
Здесь вместо нормального ответа, ундефайны приходят:
Код AS1/AS2:

Код: Выделить всё

 stat.onLoad=function(){   //_root.lvl и прочие фейльные приходят_root.lvl=stat.childNodes[1].firstChild.nodeValue;_root.max_score=stat.childNodes[2].firstChild.nodeValue;_root.score=stat.childNodes[3].firstChild.nodeValue;createTextField("s1",4452,1,82,125,18);createTextField("se",1,10,440,80,30);se.size=11;se.text=_root.lvl;s1.text=_root.score + "/" + ((10000*_root.lvl)+(_root.lvl*10000));}

Если вместо _root.user_id напишу ид пользователя вручную, то скрипт работает корректно. Но если ставлю переменную, то фейл. При том что переменная хранит в себе ид корректно, разве что ее в число преобразовать нужно , что я и делал но все равно безуспешно(
gpv123
Сообщения: 346
Зарегистрирован: 29 янв 2012, 20:57

Re: Неправельное отображение переменной

Сообщение gpv123 »

kahoxa, тебе нужен user_id или viewer_id?

Код: Выделить всё

stat.load("http://site/folder/xml.php?user_id="+_root.viewer_id,"GET");
kahoxa
Сообщения: 59
Зарегистрирован: 10 фев 2012, 17:09

Re: Неправельное отображение переменной

Сообщение kahoxa »

у меня в user_id записано viewer_id . Проблема в том что когда ставлю переменную ничего не работает, а если ввожу ид вручную все ок
kahoxa
Сообщения: 59
Зарегистрирован: 10 фев 2012, 17:09

Re: Неправельное отображение переменной

Сообщение kahoxa »

ой, все простите нашел в чем ошибка, я забыл проверить что в базе не было данного игрока)
Ответить