Самый быстрый способ посчитать друзей из определенного город

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в IFrame-приложениях (JavaScript, PHP и т.д)
Ответить
vasXL
Сообщения: 32
Зарегистрирован: 13 ноя 2011, 20:48

Самый быстрый способ посчитать друзей из определенного город

Сообщение vasXL »

Какой самый быстрый способ узнать, сколько из твоих друзей из одного города, например из Питера. Я знаю, метод friends.get. параметр city вернет значение '2'. (вроде эта цифра для Питера). Вот например у меня 300 друзей и 270 из-них из Питера. Как быстрее всего получить это число. Я пока только знаю вариант циклом перебрать все 300 друзей, и там где city равен '2', прибавлять +1 в базу данных. А есть ли какие-то другие варианты более быстрым способом узнать количество? Спасибо.
sasha^
Сообщения: 711
Зарегистрирован: 10 сен 2012, 16:52

Re: Самый быстрый способ посчитать друзей из определенного город

Сообщение sasha^ »

Какой самый быстрый способ узнать, сколько из твоих друзей из одного города, например из Питера. Я знаю, метод friends.get. параметр city вернет значение '2'. (вроде эта цифра для Питера). Вот например у меня 300 друзей и 270 из-них из Питера. Как быстрее всего получить это число. Я пока только знаю вариант циклом перебрать все 300 друзей, и там где city равен '2', прибавлять +1 в базу данных. А есть ли какие-то другие варианты более быстрым способом узнать количество? Спасибо.
а не проще сразу все без записи в бд перебрать, а потом после перебора значение записать? :)

ps. я бы так и сделал.. до твоего варианта бы в жизни не додумался :D
vasXL
Сообщения: 32
Зарегистрирован: 13 ноя 2011, 20:48

Re: Самый быстрый способ посчитать друзей из определенного город

Сообщение vasXL »

Sasha спасибо, конечно же ты абсолютно прав, просто я не знал как это сделать, а щас разобрался. Но вот только у меня новая проблема появилась, не понимаю почему не работает этот код:

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

VK.api("getProfiles", {uids:count,fields:"city"}, function(data) {var profilesCount = data.response.length;if(data.response) {var sum = 0; for (var i=0; i<profilesCount; i++) { if (data.response[i].city = '2')  {  var a = 1;  }else   {  var a = 0;  }sum+=a;} alert(sum);} });
Соответственно я хочу посчитать, сколько человек из Питера, но он почему-то выдает число, равное количеству моих друзей, то есть как будто он в каждом случае в момент цикла прибавляет по одному. В чем проблема?
sasha^
Сообщения: 711
Зарегистрирован: 10 сен 2012, 16:52

Re: Самый быстрый способ посчитать друзей из определенного город

Сообщение sasha^ »

if (data.response.city = '2') - тут вместо сравнивания идет присваивание...
ну да.. я код ненужный сократил...

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

VK.api("getProfiles", {uids:count,fields:"city"}, function(data) {if(data.response) {    var sum = 0;    for (var i=0;i<data.response.length;i++) if(data.response[i].city == 2) sum++;    alert(sum);}});
ну и вместо getProfiles нужно использовать users.get, а то первый только ради совместимости существует..

ps. лучше поучи синтаксис и пр. и не будет таких тупых вопросов.. без обид конечно :)
Ответить