нужна помощь Отображение более 1 ответа на запрос FQL is_app_user или аналогичные решения - PullRequest
0 голосов
/ 10 сентября 2011

В настоящее время я пытаюсь получить список друзей, которые добавили одно и то же приложение с помощью запроса FQL. Я на самом деле делаю это для школьного проекта, и, очевидно, сервер, на котором это будет сохранено, не поддерживается через PHP. Вот почему я использую JavaScript SDK для кодирования этого.

Это фактически первый раз, когда я делаю проект в Facebook, и все для меня чрезвычайно ново, и наличие графического API вообще не помогает мне с какими-либо старыми документами, поскольку многие вещи были изменены, а документация очень скудный>. <. </p>

В настоящее время у меня возникают проблемы с отображением нескольких результатов (я могу сделать это только при жестком кодировании ответа)

Я пытался использовать цикл for для вывода результата, но безрезультатно.

FB.api('/me', function(response) {
showLoader(false);
var query       =  FB.Data.query('SELECT uid, name, pic_square FROM user WHERE uid 
IN (SELECT uid2 FROM friend WHERE uid1 = me()) AND is_app_user');

query.wait(function(rows) {



for(var i = 0; i< rows.length;i++)
{ 
document.getElementById('debug').innerHTML =              
''+ rows[i].name +"<br />" + "<img src=\""+ rows[i].pic_square +"\" /><br />";
}
  }); 

    });

я что-то делаю неправильно? >. <. Любая помощь будет по-настоящему велика! Спасибо! </p>

1 Ответ

0 голосов
/ 07 февраля 2012

Может быть, это тот факт, что вы переступаете через то, что вы помещаете в div отладки. Попробуйте

document.getElementById('debug').innerHTML +=

Кроме того, вам не нужно иметь цикл for. Вы можете сделать так, чтобы Facebook сделал это за вас, используя функцию forEach.

Чтобы получить несколько результатов, я делаю это:

var linkquery = FB.Data.query('select owner, owner_comment, url from link where owner={0}', response.id);
FB.Data.waitOn([linkquery], function() {
  FB.Array.forEach(linkquery.value, function(row) {
    document.getElementById('debug').innerHTML += 'FQL Information: '+  "<br />" + 
      'Your name: '      +  row.owner + "<br />" +
      'Your comment: '   +  row.owner_comment + "<br />" +
      'Your link: '      +  "<a href='" + row.url  + "'>" +  row.url  + "</a><br /><br />";
  });
});

FB.Array.forEach получает каждый row.owner, и они добавляются в div отладки -

document.getElementById('debug').innerHTML += 

с каждой возвращаемой строкой.

Надеюсь, это поможет

...