Приложение, показывающее имя, фамилию, дату рождения, аватар

Темы только для ознакомления. Уроки по использованию старой версии ВКонтакте API и устаревших методов.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Приложение, показывающее имя, фамилию, дату рождения, аватар

Сообщение Александр »

Tslav, ты понимаешь что ты делаешь?
Что у тебя такое first_name в этой строке?

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

<name1>{first_name}</name1>
Имя находится в externalXML..first_name
Просто так взять и убрать "externalXML.." нельзя.
Если бы ты создал переменную first_name и в неё записал полученное имя, то возможно, твой код со второго кадра и работал бы.
Tslav
Сообщения: 6
Зарегистрирован: 10 дек 2009, 14:35

Re: Приложение, показывающее имя, фамилию, дату рождения, аватар

Сообщение Tslav »

вопрос именно в том, как это сделать?
во втором кадре, я так вписываю переменную в структуру XML, затем отправляю через PHP на сервер.
вот только не могу понять, как мне эту переменную объявить... если она только в первом кадре... и то с externalXML-ом... как вынести ее за приделы этой функции - понятия не имею :(
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Приложение, показывающее имя, фамилию, дату рождения, аватар

Сообщение Александр »

Tslav, переменная из первого кадра не видна во втором? Я не работаю с кадрами, поэтому точного совета дать не могу. Если второй кадр ключевой, то переменная не будет видна.
Tslav
Сообщения: 6
Зарегистрирован: 10 дек 2009, 14:35

Re: Приложение, показывающее имя, фамилию, дату рождения, аватар

Сообщение Tslav »

Александр, а если в том же кадре? Почему ее может быть не видно в том же кадре?
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Приложение, показывающее имя, фамилию, дату рождения, аватар

Сообщение Александр »

Tslav, напиши здесь полный код твоего первого кадра, в котором переменная не видна.
Tslav
Сообщения: 6
Зарегистрирован: 10 дек 2009, 14:35

Re: Приложение, показывающее имя, фамилию, дату рождения, аватар

Сообщение Tslav »

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

    var api_id:Number=1735784;// id вашего приложения
    var api_secret:String="e8poDj8ItM";// секретный ключ
    var externalXML:XML;
    var loader:URLLoader = new URLLoader();
    var photoLoader:Loader = new Loader();
    var viewer_id:Number;
    var sig:String;
    var uid:String;
    var bdate_txt:TextField = new TextField();
    var name_txt:TextField = new TextField();


//считываем значение из переменной FlashVars и преобразуем строку в число
//если params['viewer_id'] нет, то будет принято значение 1. Если не загружать в контакт, то оно будет 1
    var params:Object=LoaderInfo(root.loaderInfo).parameters;
    viewer_id = (params['viewer_id']) ? parseInt(params['viewer_id']) : 1;
    getProfile(viewer_id);

    function getProfile(uid):void {
       sig=MD5.encrypt(viewer_id+'api_id='+api_id+'fields=bdate,photo_bigmethod=getProfilesuids='+uid+'v=2.0'+api_secret);
       var request:URLRequest=new URLRequest("http://api.vkontakte.ru/api.php?api_id="+api_id+"&method=getProfiles&uids="+uid+"&fields=bdate,photo_big&v=2.0&sig="+sig);
       loader.load(request);
       loader.addEventListener(Event.COMPLETE, onComplete);
    }

function onComplete(event:Event):void {
       bdate_txt.text='';
       if (loader!=null) {
          externalXML=new XML(loader.data);
          var bdate=externalXML..bdate;
          bdate_txt.text=bdate;
          bdate_txt.x=490;
          bdate_txt.y=380;
          addChild(bdate_txt);

		  var uname=externalXML..first_name+' '+externalXML..last_name;
          name_txt.text=uname;
          name_txt.x=410;
          name_txt.y=360;
          addChild(name_txt);
		  pole.text=uname;
	   
          var photo=externalXML..photo_big;
          var request2:URLRequest=new URLRequest(photo);
          photoLoader.load(request2);
          photoLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);

       } else {
          trace("Error!");
       }
}
	
    function onLoaded(e:Event):void {
       photoLoader.x = (550-photoLoader.width)/2;
       photoLoader.y = (400-photoLoader.height)/2;
	}

//вот тут хочу его увидеть...
	
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Приложение, показывающее имя, фамилию, дату рождения, аватар

Сообщение Александр »

Tslav, значение из externalXML..first_name можно будет считать только после того как будет событие onComplete. Если ты пытаешься считать оттуда до этого события, то это не получится, т.к. значения там ещё нет.
Tslav
Сообщения: 6
Зарегистрирован: 10 дек 2009, 14:35

Re: Приложение, показывающее имя, фамилию, дату рождения, аватар

Сообщение Tslav »

но ведь там в конце скрипта уже все произошло, так почему же не видно? или нет?
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Приложение, показывающее имя, фамилию, дату рождения, аватар

Сообщение Александр »

Tslav, чтобы программировать на actionscript, нужно знать что такое события. Действия функций происходят не в той последовательности в которой они написаны, а в той в которой они используются.
VIP
Сообщения: 252
Зарегистрирован: 24 ноя 2009, 18:10

Re: Приложение, показывающее имя, фамилию, дату рождения, аватар

Сообщение VIP »

Кто мне обьяснит почему когда я включаю контейнер приложение не работает?
Ответить