Пользователи, кликнувшие по «Мне нравится» (likes.getList)

Только готовые уроки по использованию ВКонтакте API. Flash + PHP + API. НЕ IFrame!

Re: Пользователи, кликнувшие по «Мне нравится» (likes.getList)

Сообщение bikerdimon » 27 сен 2012, 22:59

Народ, подскажите пожалуйста как сделать можно вывод последних поставленных айди лайков . Тестировал Api на разных объектах, понял одно, там где мало лайков стоит выводит более менее последние, но на объектах, на которых стоит к примеру 40к лайков, мой айди показывает в середине списка, хотя я только поставил, как вывести последние к примеру 100 или более юидов пользователей?
Заранее спасибо и просьба не отвечать ссылками на другие источники, т.к. я читал и не нашел ответ
bikerdimon

 
Сообщения: 42
Зарегистрирован: 03 июн 2012, 22:42
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

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

Google
 



Re: Пользователи, кликнувшие по «Мне нравится» (likes.getList)

Сообщение Александр » 01 окт 2012, 21:13

bikerdimon
Первые 100 id из списка, который возвращает метод likes.getList - это последние 100 id, которые лайкнули запись. Разве не так?
Лайкнул объект - мой id вернулся первым в списке.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
 
Автор темы
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45
Откуда: Санкт-Петербург
Благодарил (а): 126 раз.
Поблагодарили: 771 раз.

Re: Пользователи, кликнувшие по «Мне нравится» (likes.getList)

Сообщение Mihailow_du » 21 окт 2012, 19:18

А можете помочь с таким вопросом:

как мне получить список id пользователей кликнувших по "Мне нравится", причем не в виде:

Array ( [response] => Array ( [count] => 10 [users] => Array ( [0] => 9906027 [1] => 54323419 [2] => 26017508 [3] => 10104936 [4] => 24346878 [5] => 19240191 [6] => 5666988 [7] => 54941534 [8] => 146773407 [9] => 3517148 ) ) )


А нормальном массиве перебрав который я мог бы проверить каждый id на факт присутствия в группе.
Проще говоря моя задача взять все лайки с кнопки "Мне нравится" и подсчитать сколько из этих лайков поставили участники конкретной группы...
Помогите как это сделать??

Лайки получаю так:
  1. <?
  2.     $res = file_get_contents('https://api.vk.com/method/likes.getList?type=sitepage&owner_id=2170107&item_id=22&page_url=http://vk.com/map4geo#mom_mom');
  3.     $resp = json_decode($res, true);
  4.  
  5.     echo 'У участницы №22 стоит лайков: '.$resp['response']['count'].'<br><br>';
  6. //  echo '<br>Из них "чистых" голосов: <b>'.$resp['response']['count']['users'].'</b><br><br>';
  7.    
  8.     print_r($resp);
  9.     
  10. ?>


И как мне преодолеть порог (ограничение) в 100 лайков??
Не идите за мной - я сам заблудился...
Карта/справочник некоторых городов:
http://vk.com/app2170107 <-- входите!
Аватара пользователя
Mihailow_du

 
Сообщения: 63
Зарегистрирован: 24 янв 2012, 18:26
Откуда: Красноярск
Благодарил (а): 9 раз.
Поблагодарили: 0 раз.

Re: Пользователи, кликнувшие по «Мне нравится» (likes.getList)

Сообщение Mihailow_du » 22 окт 2012, 08:26

Такой вот вопрос: а как мне вытащить конкретный id ?

хочу перебрать все id и с каждым выполнить проверку, но не могу из этой строки :

Array ( [response] => Array ( [count] => 10 [users] => Array ( [0] => 9906027 [1] => 54323419 [2] => 26017508 [3] => 10104936 [4] => 24346878 [5] => 19240191 [6] => 5666988 [7] => 54941534 [8] => 146773407 [9] => 3517148 ) ) )


поочередно вытащить все id, пробывал и так:

echo 'id №5: '.$resp['response']['count']['user']['5'];


и так:

echo 'id №5: '.$resp['response']['count']['user']['5']['uid'];


и что то никак не получается... Помогите перебрать весь список? как это сделать??
Не идите за мной - я сам заблудился...
Карта/справочник некоторых городов:
http://vk.com/app2170107 <-- входите!
Аватара пользователя
Mihailow_du

 
Сообщения: 63
Зарегистрирован: 24 янв 2012, 18:26
Откуда: Красноярск
Благодарил (а): 9 раз.
Поблагодарили: 0 раз.

Re: Пользователи, кликнувшие по «Мне нравится» (likes.getList)

Сообщение Serge » 22 окт 2012, 09:08

Mihailow_du писал(а):и что то никак не получается... Помогите перебрать весь список? как это сделать??

foreach
http://sevenlines.com.ua - разработка и продвижение сайтов
Serge
WEB Team
WEB Team
 
Сообщения: 520
Зарегистрирован: 04 мар 2011, 21:55
Благодарил (а): 2 раз.
Поблагодарили: 65 раз.

Re: Пользователи, кликнувшие по «Мне нравится» (likes.getList)

Сообщение Mihailow_du » 22 окт 2012, 09:54

в общем как вывести список я понял и вывожу его так:

  1. $res = file_get_contents('https://api.vk.com/method/likes.getList?type=sitepage&owner_id=2170107&item_id=2&page_url=http://vk.com/map4geo#mom_etap2');
  2. $resp = json_decode($res, true);
  3. echo 'Лайков: '.$resp['response']['count'];
  4. echo '<br>Список участников:<br>';
  5.  
  6.     $end = $resp['response']['count'];
  7.     $i = 0;
  8.    
  9.     while ( $i < $end ) {
  10.         echo ('<br>id '.$i.': '.$resp['response']['users'][$i]);
  11.         $i++;
  12.     }


Но мне выводит только последнюю сотню лайков, а как мне вывести все 150, 500 лайков ??

Вот фрагмент ответа:

...
id 94: 179005295
id 95: 90385738
id 96: 7884675
id 97: 21807489
id 98: 9204680
id 99: 71851839 Notice: Undefined offset: 100 in /home/mihailow_du/public_html/mom/momfoto3.php on line 47
id 100: Notice: Undefined offset: 101 in /home/mihailow_du/public_html/mom/momfoto3.php on line 47
id 101: Notice: Undefined offset: 102 in /home/mihailow_du/public_html/mom/momfoto3.php on line 47
id 102: Notice: Undefined offset: 103 in /home/mihailow_du/public_html/mom/momfoto3.php on line 47
...
Не идите за мной - я сам заблудился...
Карта/справочник некоторых городов:
http://vk.com/app2170107 <-- входите!
Аватара пользователя
Mihailow_du

 
Сообщения: 63
Зарегистрирован: 24 янв 2012, 18:26
Откуда: Красноярск
Благодарил (а): 9 раз.
Поблагодарили: 0 раз.

Re: Пользователи, кликнувшие по «Мне нравится» (likes.getList)

Сообщение Александр » 22 окт 2012, 13:58

Mihailow_du
http://vk.com/developers.php?oid=-1&p=likes.getList
Параметр offset - смещение, относительно начала списка, для выборки определенного подмножества. Если параметр не задан, то считается, что он равен 0.
Параметр count - количество возвращаемых идентификаторов пользователей. Если параметр не задан, то считается, что он равен 100, если не задан параметр friends_only, в противном случае 10. Максимальное значение параметра 1000, если не задан параметр friends_only, в противном случае 100.

Установить count в 1000 и сделать несколько запросов, передавая offset.

$resp['response']['count'] - это общее количество лайков у записи, а не полученные в ответ. Не надо это использовать при обходе массива.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
 
Автор темы
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45
Откуда: Санкт-Петербург
Благодарил (а): 126 раз.
Поблагодарили: 771 раз.

Re: Пользователи, кликнувшие по «Мне нравится» (likes.getList)

Сообщение Mihailow_du » 22 окт 2012, 16:51

Все я добился своего!!! Цель достигнута...
Может быть позже выложу свой скрипт как урок.
Не знаю будет кому такое интересно или нет...

У меня на странице (в приложении) проходил конкурс - голосование за фото. Всего на странице 38 фото и следовательно 38 кнопок "мне нравится".
Задача была отсеять накрутки и выбрать число лайков поставленные внутри приложения (а не внешние накрутки) и только от участников конкретной группы!!

Как думаете нужно такое тут писать??
Не идите за мной - я сам заблудился...
Карта/справочник некоторых городов:
http://vk.com/app2170107 <-- входите!
Аватара пользователя
Mihailow_du

 
Сообщения: 63
Зарегистрирован: 24 янв 2012, 18:26
Откуда: Красноярск
Благодарил (а): 9 раз.
Поблагодарили: 0 раз.

Re: Пользователи, кликнувшие по «Мне нравится» (likes.getList)

Сообщение Александр » 24 окт 2012, 20:30

Mihailow_du писал(а):Как думаете нужно такое тут писать??

На форуме некоторые любят только любой готовый и рабочий код. Лишним не будет.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
 
Автор темы
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45
Откуда: Санкт-Петербург
Благодарил (а): 126 раз.
Поблагодарили: 771 раз.

Re: Пользователи, кликнувшие по «Мне нравится» (likes.getList)

Сообщение lodas » 01 дек 2012, 21:10

Здравствуйте, а если мне нужно получить список пользователей, кликнувших по моей ссылке(объявлению) размещенной в чужой группе. Возможно ли такое? Если возможно то в какую сторону копать?
lodas

 
Сообщения: 7
Зарегистрирован: 01 дек 2012, 17:24
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Пред.След.

Вернуться в Уроки по использованию ВКонтакте API



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

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

cron