Страница 1 из 2

Чужой профиль

Добавлено: 07 авг 2011, 15:30
dr1emaver
Здравствуйте, возник такой вопросик. Предположим я получаю информацию о пользователе через метод getProfiles, сохраняю его в БД. Тоесть получается БД с характеристикой людей. Это нужно для того, чтобы просматривать в программе профиль человека. Каким образом можно это организовать? Например, кликнул на ФИО пользователя и тут высветилась его информация полученная из БД.

Re: Чужой профиль

Добавлено: 07 авг 2011, 21:24
Александр
Как в базу будут попадать данные? Ты автоматически хочешь всё собрать или пользователь сам будет добавлять себя в твою базу?
Кликнул на ФИО, обратился к серверу, сервер вернул ответ, в приложении обработай его.

Re: Чужой профиль

Добавлено: 07 авг 2011, 21:49
dr1emaver
Александр писал(а):Кликнул на ФИО, обратился к серверу, сервер вернул ответ, в приложении обработай его.
Вот момент с кликаньем на ФИО меня и интересует, как обрабатывать ответ и выводить с этим проблем нету. А вот именно как сделать чтобы можно было кликнуть на ФИО - вот этого придумать не могу..Это же не обычная кнопка, чтобы на ее кликать и вызывать событие.

Re: Чужой профиль

Добавлено: 08 авг 2011, 04:42
bodnar
в данном вашем случае у классов TextField или MovieClip (на выбор как удобнее) есть событие MouseEvent.CLICK

Re: Чужой профиль

Добавлено: 10 авг 2011, 11:39
dr1emaver
А вот можно ли сделать без участия сервера с помощью функции friends.get? Чтобы информация выдавалась по uid. То есть подаем определенный uid в эту функцию и получаем информацию о человеке, но я никак не могу продумать момент нажатия на фио .. Как можно нажать и получить нужный uid или без сервера и БД тут никак ?

Re: Чужой профиль

Добавлено: 10 авг 2011, 20:31
Александр
dr1emaver
Ты же хочешь записывать в БД.
Прочитай описание методов friends.get и getProfiles. Какой из них тебе подходит?

Реализуй то что можешь до момента нажатия на ФИО, тем способом, которым хочешь. Дальше уже спрашивай конкретней.

Re: Чужой профиль

Добавлено: 11 авг 2011, 09:33
dr1emaver
От записи в БД я отказывался из-за того, что как хранить фотографии ? Или можно хранить сылки на фотографии ?

А так вот код общение с сервером.. При заходе человека в приложение его данные записываются.Данные передает, смотрел в чарлезе.

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

 private function profile_to_server(e:Event): void{var stat_loader:URLLoader = new URLLoader();var stat_request:URLRequest=new URLRequest("http://site/testing.php");// заменяем на ссылку к вашему скриптуstat_request.method=URLRequestMethod.POST;// добавление параметров в запросvar stat_vars:URLVariables = new URLVariables();stat_vars['auth_key']=auth_key;stat_vars['viewer_id']=viewer_id;stat_vars['nameuser'] = nameuser;stat_vars['bdate'] = bdate;stat_vars['sex'] = sex_temp;stat_vars['education'] = education_temp;stat_vars['country'] = country_temp;stat_vars['city'] = city_temp;stat_request.data=stat_vars;// выполнение запросаstat_loader.load(stat_request);      } 
Далее посылка от сервера :

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

 private function server_to_profile(uid:uint):void        {var stat_loader:URLLoader = new URLLoader();var stat_request:URLRequest=new URLRequest("http://site/testing2.php");// заменяем на ссылку к вашему скриптуstat_request.method=URLRequestMethod.POST;// добавление параметров в запросvar stat_vars:URLVariables = new URLVariables();stat_vars['auth_key']=auth_key;stat_vars['uid']=uid;stat_vars['viewer_id']=viewer_id;// ID просматривающего приложениеstat_loader.addEventListener(Event.COMPLETE,profile);stat_request.data=stat_vars;// выполнение запросаstat_loader.load(stat_request);                                 } 
Т.е. при нажатии на ФИО должен посылаться uid пользователя, чей профиль мы хотим посмотреть. А от сервера пойдет ответ через оператор echo данных пользователя которые мы раньше записали.
И все это будет передаваться в функцию profile. В которой будет печать этих переменных

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

 private function profile (e:Event) : void {name_tf.text = 'Имя:';name_tf.appendText (' ' + nameuser);name_tf.x = 100;name_tf.y = 195;name_tf.autoSize = TextFieldAutoSize.LEFT;scene.addChild(name_tf);//для остальных переменных } 
Извиняюсь за форматирование..
Помогите пожалуйста.

Re: Чужой профиль

Добавлено: 11 авг 2011, 20:48
Александр
dr1emaver
Есть ли смысл вообще хранить какие-то данные кроме id пользователей? Через getProfiles можно получить актуальные фамилию, имя и фотографию.
dr1emaver писал(а):Далее посылка от сервера :
Не посылка от сервера, а получение данных от сервера. Флешка их забирает, а не сервер отправляет. Вот и смотри чарлезом какие данные сервер отдает при запросе.

Посмотри уроки Отправка запроса на сервер, получение данных (AS3, PHP) и Передача данных от сервера клиенту (XML, JSON).

Re: Чужой профиль

Добавлено: 16 авг 2011, 19:00
dr1emaver
Здравствуйте, реализовал через getProfiles и тут я заметил, что у меня не всегда отображает город. То он отображается, то его нету..
Код такой :

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

  public function Main():void{            viewer_id = flashVars['viewer_id'];            // secret для генерации сигнатуры            secret = flashVars['secret'];            // id сессии            sid = flashVars['sid'];            // адрес API-сервиса            api_url = flashVars['api_url'];            auth_key = flashVars['auth_key'];            VK = new APIConnection(flashVars);            //getProfile(viewer_id);            VK.api('getProfiles',{ uids: viewer_id,fields:'photo_big,sex,bdate,city,country,education'},onComplete, onError);} private function onComplete(data: Object):void        {        VK.api('places.getCountryById', { cids: data[0]['country'] },onCountryLoaded, onError);         VK.api('places.getCityById',{ cids: data[0]['city']},onCityLoaded,onError);//...                                }private function profiles (e:Event) // вызывается при нажатии кнопки        {         country_tf.x = photoLoader.width+30;        country_tf.y = 235;        country_tf.autoSize = TextFieldAutoSize.LEFT;        scene.addChild(country_tf);                                }private function onCountryLoaded(data: Object):void                               {            // обрабатываем полученный ответ            country_temp = data[0]['name'] ;            country_tf.text = 'Место проживания:';           country_tf.appendText(' ' + country_temp );                            }private function onCityLoaded (data: Object) : void                 {            //обрабатываем полученный ответ             city_temp = data[0]['name'];            country_tf.appendText(', ' + city_temp);        } 
Кто нибудь сталкивался с такой проблемой?

Re: Чужой профиль

Добавлено: 16 авг 2011, 19:10
bodnar
у меня например в профиле город не указан, и что ты отображать собираешься?