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

Метод getAds в IFrame-приложении в контакте

Добавлено: 09 июл 2010, 14:16
Влад
простите меня возможно за тупой вопрос, но помогите пожалуйста, никак не могу использовать метод getADS

Вот мой код:

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

VK.api("getAds", {uids:viewer_id,fields:"title", "description", "photo", "link"}, function(data) { // обрабатываем полученные данные document.getElementById('ads').innerHTML = data.response[0].title + ' ' data.response[0].description + ' 'data.response[0].photo + ' '+ data.response[0].link + '<br />'; var image=document.createElement('img');// из полученных данных берем ссылку на фотоimage.src=data.response[0].photo;// добавляем img в блок user_infouser_info.appendChild(image);});
P.S код писал по анологии этого урока, сильно ногами не бейте, буду признателен за замечания и советы!

Re: IFrame-приложение ВКонтакте. Вывод информации о пользователе

Добавлено: 09 июл 2010, 18:33
Александр
Влад
Читал это http://vkontakte.ru/page9279356 ?

Сравни методы getProfiles и getAds
В методе getProfiles параметр uids нужно указывать обязательно. В методе getAds такого параметра даже нет!
В методе getProfiles можно указать необязательный параметр fields. А в методе getAds такого параметра нет. Так зачем ты придумываешь их?

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

VK.api("getAds", {}, function(data) { 
или для теста

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

VK.api("getAds", {test_mode:"1"}, function(data) { 

И дальше внимательнее смотри свой код...
Как это отработает?

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

' ' data.response[0].description
надо же

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

' ' + data.response[0].description

Re: IFrame-приложение ВКонтакте. Вывод информации о пользователе

Добавлено: 09 июл 2010, 20:46
Влад
Александр

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

<html><head><!-- подключаем xd_connection.js --><script src="http://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script> <script type="text/javascript" charset="cp1251" >window.onload = (function() {   // когда загрузится вся страница    VK.init(function() {    // инициализируем Vk API     // узнаём flashVars, переданные приложению GET запросом. Сохраняем их в переменную flashVars    var parts=document.location.search.substr(1).split("&");    var flashVars={}, curr;    for (i=0; i<parts.length; i++) {        curr = parts[i].split('=');        // записываем в массив flashVars значения. Например: flashVars['viewer_id'] = 1;        flashVars[curr[0]] = curr[1];    }       // получаем viewer_id из полученных переменных    var viewer_id = flashVars['viewer_id'];     // выполняем запрос получения профиля    VK.api("getAds", {test_mode:"1"}, function(data) {// обрабатываем полученные данные document.getElementById('ads').innerHTML = data.response[0].title + ' ' + data.response[0].description + ' ' + data.response[0].photo + ' ' + data.response[0].link + '<br />'; var image=document.createElement('img');// из полученных данных берем ссылку на фотоimage.src=data.response[0].photo;// добавляем img в блок user_infouser_info.appendChild(image);});     });});</script></head><body> </body></html>
Вот внёс коррективы - получилось что-то приблизительно серого большого квадрата на белом фоне, посмотрите пожалуйста мой код

Re: IFrame-приложение ВКонтакте. Вывод информации о пользователе

Добавлено: 09 июл 2010, 21:16
Александр
Влад
Вообщем, учи Javascript :)

Знаешь что это делает?

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

document.getElementById('ads')
Берет элемент с id="ads". В твоём коде такого нет. В моём коде есть другое, аналогичное:

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

<div id="user_info">http://flapps.ru</div>
А вот это что у тебя?

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

user_info.appendChild(image);
ты же убрал блок с id="user_info".
С чего ж оно вдруг заработает...

Re: IFrame-приложение ВКонтакте. Вывод информации о пользователе

Добавлено: 09 июл 2010, 21:44
Влад
:roll: так и знал что у меня проблемы с головой!

Re: IFrame-приложение ВКонтакте. Вывод информации о пользователе

Добавлено: 10 июл 2010, 10:02
Влад
Вот что получилось, опять не работает код! Что серьёзно один я не понимаю как эту рекламу впихнуть? :x если даже и так ткните пожалуйста пальцем на ошибку в моём коде, я ж не спроста пытаюсь сделать рабочий код, мне он понадобится, а завтра понадобится кому-то ещё...

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

<html><head><!-- подключаем xd_connection.js --><script src="http://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script> <script type="text/javascript" charset="cp1251" >window.onload = (function() {   // когда загрузится вся страница    VK.init(function() {    // инициализируем Vk API     // узнаём flashVars, переданные приложению GET запросом. Сохраняем их в переменную flashVars    var parts=document.location.search.substr(1).split("&");    var flashVars={}, curr;    for (i=0; i<parts.length; i++) {        curr = parts[i].split('=');        // записываем в массив flashVars значения. Например: flashVars['viewer_id'] = 1;        flashVars[curr[0]] = curr[1];    }       // получаем viewer_id из полученных переменных    var viewer_id = flashVars['viewer_id'];     // выполняем запрос получения профиля    VK.api("getAds", {test_mode:"1"}, function(data) {// обрабатываем полученные данные document.getElementById('user_info').innerHTML = data.response[0].title + ' ' + data.response[0].description + ' ' + data.response[0].photo + ' ' + data.response[0].link + '<br />'; var image=document.createElement('img');// из полученных данных берем ссылку на фотоimage.src=data.response[0].photo;text.src=data.reponce[0].title// добавляем img в блок user_infouser_info.appendChild(image);user_info.appendChild(text);});     });});</script></head><body><div id="user_info">http://flapps.ru</div></body></html>

Re: IFrame-приложение ВКонтакте. Вывод информации о пользователе

Добавлено: 10 июл 2010, 15:52
Александр
Влад
Так javascript то знаешь?) Без этих знаний и не будет ничего получаться.

Опять же, что это?

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

text.src=data.reponce[0].title
Обдумай это внимательно, вместе с какой-нибудь книжкой по Javascript...

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

<html><head><!-- подключаем xd_connection.js --><script src="http://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script> <script type="text/javascript" charset="cp1251" >window.onload = (function() { // когда загрузится вся страница    VK.init(function() {        // инициализируем Vk API     VK.api("getAds", {test_mode:"1"}, function(data) {      document.getElementById('ads').innerHTML = data.response[0].title + '<br />'            + data.response[0].description + '<br />'            + data.response[0].photo + '<br />'            + data.response[0].link + '<br />';     var image=document.createElement('img');    image.src=data.response[0].photo;    ads.appendChild(image);     });      });});</script></head><body><div id="ads">http://flapps.ru</div></body></html>

Re: Метод getAds в IFrame-приложении в контакте

Добавлено: 10 июл 2010, 16:33
Влад
Александр когда разберусь с рекламой обещаю что прочитаю книжку по javascript и начну верить в свои силы, ваш код выводит только ссылку http://flapps.ru Вот так вот : http://188.93.17.73/ads.html

Re: Метод getAds в IFrame-приложении в контакте

Добавлено: 10 июл 2010, 16:38
Александр
Влад
У меня работает.
Я смогу видеть приложение, если ты временно добавишь меня в список его администраторов? Если да, то сделай и напиши здесь или в личку ссылку на него.
Или напиши ссылку на твой html файл на твоем сервере.

Re: Метод getAds в IFrame-приложении в контакте

Добавлено: 10 июл 2010, 16:40
Влад