Вставка ответа в дизайн приложения на запрос. IFrame

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в IFrame-приложениях (JavaScript, PHP и т.д)

Вставка ответа в дизайн приложения на запрос. IFrame

Сообщение tiN » 12 ноя 2010, 19:31

Привет всем!

Почитав часть тем на этом форуме понял, что тут сидят прошаренные парни, и подумал, что быть может тут мне помогут.

Постараюсь как можно понятливее написать суть вопроса.

Приступаем...

Итак. При создании IFrame приложения ВКонтакте требуется выводить краткую информацию о пользователе, который просматривает это приложение.

Всего-навсего нужно выводить имя и фамилию пользователя и его уменьшенную фотографию. Начал рыться в методах ВКонтакте API. Нашел, наверно то, что нужно: Метод getUserInfoEx. Всё бы замечательно, но я настолько уныл, что не знаю как вывести эти данные и вставить их в шаблон приложения.

Делая каким то чудом запрос к API — на удивление получаю правильный ответ, без ошибок (конечно, не без помощи Олега Илларионова).

Казалось бы... что ещё от жизни нужно?

Но беда заключается вот в чём: Этот самый ответ я получаю в диалоговом окне, в таком виде:
  1. {"response":{"user_id":"6492","user_name":"Andrew Rogozov","user_sex":"2",
  2. "user_bdate":"11.11.1987","user_city":"Санкт-Петербург","user_photo":
  3. "http:\/\/cs537.vkontakte.ru\/u06492\/a_ed926bbb.jpg"}}


И, блин сижу второй день и никак не соображу, что делать дальше...

Ближе к делу...

Весь этот ответ мне нафиг не нужен. Нужно (как я упоминал выше) имя, фамилия и уменьшенная фотография пользователя. Точь в точь как на durov.am.

Вот и всё.

Заранее спасибо, за желательно полный и подробный ответ.
tiN

 
Автор темы
Сообщения: 16
Зарегистрирован: 12 ноя 2010, 18:53
Благодарил (а): 2 раз.
Поблагодарили: 0 раз.

Чтобы убрать блок с рекламой, зарегистрируйтесь на форуме или войдите.

Google
 



Re: Вставка ответа в дизайн приложения на запрос. IFrame

Сообщение Александр » 13 ноя 2010, 00:44

tiN
getUserInfoEx - это устаревший метод. Какой смысл использовать его? Используй getProfiles.
И посмотри урок IFrame-приложение ВКонтакте. Вывод информации о пользователе.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
 
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45
Откуда: Санкт-Петербург
Благодарил (а): 126 раз.
Поблагодарили: 771 раз.

Re: Вставка ответа в дизайн приложения на запрос. IFrame

Сообщение jagger » 13 ноя 2010, 10:11

tiN писал(а): выводить имя и фамилию пользователя и его уменьшенную фотографию.

Вывод [Имя, Фамилия, Фото 50px]
  1. VK.api('getProfiles',{uids: ''+viewer_id+'', fields: 'photo', name_case: 'nom'}, function(data) {
  2. document.getElementById('results').innerHTML = document.getElementById('results').innerHTML + <img src='+ data.response[0].photo +' />Имя:<a target="_blank" href="http://vkontakte.ru/id' + data.response[0].uid + '">' + data.response[0].first_name + '</a>Фамилия:<a target="_blank" href="http://vkontakte.ru/id' + data.response[0].uid + '">' + data.response[0].last_name + '</a>;
  3. });


Логично менять размер фото можно заменив в коде лишь:
50px

100px

200px
ИзображениеПродаю ИСХОДНИКИ приложений для сайта Изображение
Изображение Перейти в тему

За это сообщение автора jagger поблагодарил:
tiN
Аватара пользователя
jagger

 
Сообщения: 114
Зарегистрирован: 28 июл 2010, 13:26
Благодарил (а): 5 раз.
Поблагодарили: 4 раз.

Re: Вставка ответа в дизайн приложения на запрос. IFrame

Сообщение tiN » 13 ноя 2010, 14:29

jagger, спасибо большое! Но я вставил Ваш код в шаблон и ничего нету. Если не сложно: напишите код, который можно вставить и всё заработает. Почитал урок выше - примерно понял что к чему, но пока не увижу как это всё оформляется - скорее всего и не пойму...
tiN

 
Автор темы
Сообщения: 16
Зарегистрирован: 12 ноя 2010, 18:53
Благодарил (а): 2 раз.
Поблагодарили: 0 раз.

Re: Вставка ответа в дизайн приложения на запрос. IFrame

Сообщение jagger » 13 ноя 2010, 18:02

ИзображениеПродаю ИСХОДНИКИ приложений для сайта Изображение
Изображение Перейти в тему
Аватара пользователя
jagger

 
Сообщения: 114
Зарегистрирован: 28 июл 2010, 13:26
Благодарил (а): 5 раз.
Поблагодарили: 4 раз.

Re: Вставка ответа в дизайн приложения на запрос. IFrame

Сообщение tiN » 13 ноя 2010, 22:29

Что то я вообще ничего не понял.

Можешь написать полный код, после добавления его в шаблон я получил эту фотографию и имя пользователя...
tiN

 
Автор темы
Сообщения: 16
Зарегистрирован: 12 ноя 2010, 18:53
Благодарил (а): 2 раз.
Поблагодарили: 0 раз.

Re: Вставка ответа в дизайн приложения на запрос. IFrame

Сообщение jagger » 13 ноя 2010, 22:34

Привожу пример на коде Александра, код рабочий!

  1. <html>
  2. <head>
  3. <script src="http://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script>
  4.  
  5. <script type="text/javascript" charset="cp1251" >
  6. window.onload = (function() {  
  7.     VK.init(function() {    
  8.  
  9.  
  10.     var parts=document.location.search.substr(1).split("&");
  11.     var flashVars={}, curr;
  12.     for (i=0; i<parts.length; i++) {
  13.         curr = parts[i].split('=');
  14.  
  15.         flashVars[curr[0]] = curr[1];
  16.     }
  17.    
  18.  
  19.     var viewer_id = flashVars['viewer_id'];
  20.  
  21.  
  22.     VK.api("getProfiles", {uids:viewer_id,fields:"photo"}, function(data) {
  23.  
  24.         document.getElementById('user_info').innerHTML = data.response[0].first_name + ' ' + data.response[0].last_name + '<br />';
  25.  
  26.         var image=document.createElement('img');
  27.  
  28.         image.src=data.response[0].photo;
  29.  
  30.         user_info.appendChild(image);
  31.     });
  32.  
  33.     });
  34. });
  35. </script>
  36. </head>
  37. <body>
  38. <div id="user_info">http://flapps.ru</div>
  39. </body>
  40. </html>
ИзображениеПродаю ИСХОДНИКИ приложений для сайта Изображение
Изображение Перейти в тему
Аватара пользователя
jagger

 
Сообщения: 114
Зарегистрирован: 28 июл 2010, 13:26
Благодарил (а): 5 раз.
Поблагодарили: 4 раз.

Re: Вставка ответа в дизайн приложения на запрос. IFrame

Сообщение tiN » 14 ноя 2010, 22:03

Всё равно ничего нету (даже с этим шаблоном. на странице выводится только "http://flapps.ru" и всё.
tiN

 
Автор темы
Сообщения: 16
Зарегистрирован: 12 ноя 2010, 18:53
Благодарил (а): 2 раз.
Поблагодарили: 0 раз.

Re: Вставка ответа в дизайн приложения на запрос. IFrame

Сообщение jagger » 14 ноя 2010, 22:39

Попробуй разрешить все действия приложению (настройки), и заливать файл с кодом в корень сервера. Т.е. Serv://корневая_папка/index.html или *.php

вот примерно как выглядит код, который у меня очень даже работает:

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html id="jagger" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en"><head>
  3. <script src="http://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script>
  4.  
  5. <script type="text/javascript" charset="cp1251" >
  6. window.onload = (function() {
  7.     VK.init(function() {  
  8.     var parts=document.location.search.substr(1).split("&");
  9.     var flashVars={}, curr;
  10.     for (i=0; i<parts.length; i++) {
  11.         curr = parts[i].split('=');
  12.         flashVars[curr[0]] = curr[1];
  13.     }
  14.     var viewer_id = flashVars['viewer_id'];
  15.     VK.api('getProfiles',{uids: ''+viewer_id+'', fields: 'nickname, sex, bdate, city, photo, online, rate', name_case: 'nom'}, function(data) {
  16. document.getElementById('results22').innerHTML = document.getElementById('results').innerHTML = document.getElementById('results').innerHTML + '<div style="background:#fff;border:1px solid #dae2e8;padding:5px;"><table><tr><td style="padding-right:10px;" align="left"> <a target="_blank" href="http://vkontakte.ru/id' + data.response[0].uid + '"><img src='+ data.response[0].photo +' /></a> </td><td><table><tr><td style="color:#555;">Имя:</td><td><a target="_blank" href="http://vkontakte.ru/id' + data.response[0].uid + '">' + data.response[0].first_name + '</a></td></tr><tr><td style="color:#555;">Фамилия:</td><td><a target="_blank" href="http://vkontakte.ru/id' + data.response[0].uid + '">' + data.response[0].last_name + '</a></td></tr><tr><td style="color:#555;">ID-страници:</td><td>' + data.response[0].uid + '</td></tr></table></td></tr></table></div>';
  17. });
  18. });
  19. });
  20. </script>
  21. </head>
  22. <body>
  23. <div id="results22">Загрузка профиля <img src="http://vk.com/images/upload.gif" border="0"/> &copy; 2010</div>
  24. </body>
  25. </html>
  26.  
ИзображениеПродаю ИСХОДНИКИ приложений для сайта Изображение
Изображение Перейти в тему
Аватара пользователя
jagger

 
Сообщения: 114
Зарегистрирован: 28 июл 2010, 13:26
Благодарил (а): 5 раз.
Поблагодарили: 4 раз.

Re: Вставка ответа в дизайн приложения на запрос. IFrame

Сообщение tiN » 10 дек 2010, 00:13

Во! Всё люто заработало!

Но возникла проблема.

Как юзать сессии, что бы переменные не пропадали при переходе на ту или иную страницу

Использовал

Но получалась ерунда :(

Что нужно добавить в
  1. <script type="text/javascript" charset="cp1251" >
  2. window.onload = (function() {  
  3.     VK.init(function() {    
  4.  
  5.  
  6.     var parts=document.location.search.substr(1).split("&");
  7.     var flashVars={}, curr;
  8.     for (i=0; i<parts.length; i++) {
  9.         curr = parts[i].split('=');
  10.  
  11.         flashVars[curr[0]] = curr[1];
  12.     }
  13.    
  14.  
  15.     var viewer_id = flashVars['viewer_id'];
  16.  
  17.  
  18.     VK.api("getProfiles", {uids:viewer_id,fields:"photo"}, function(data) {
  19.  
  20.         document.getElementById('user_info').innerHTML = data.response[0].first_name + ' ' + data.response[0].last_name + '<br />';
  21.  
  22.         var image=document.createElement('img');
  23.  
  24.         image.src=data.response[0].photo;
  25.  
  26.         user_info.appendChild(image);
  27.     });
  28.  
  29.     });
  30. });
  31. </script>
tiN

 
Автор темы
Сообщения: 16
Зарегистрирован: 12 ноя 2010, 18:53
Благодарил (а): 2 раз.
Поблагодарили: 0 раз.

След.

Вернуться в Создание IFrame-приложений ВКонтакте



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

cron