Получение профиля пользователя с готового id

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в IFrame-приложениях (JavaScript, PHP и т.д)
Аватара пользователя
Влад
Модератор
Модератор
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24

Получение профиля пользователя с готового id

Сообщение Влад »

Суть проблемы, в БД храню id пользователей - без аватаров, имен и фамилий, пытался сделать выборку с php. для вывода id. Собственно костыль в том как в js засунуть результат из php.

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

 <?php $viewer_id = $_GET['viewer_id']; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////$link = mysql_connect("localhost", "щдщдщ", "щдщдщдщ") or die ("Could not connect : " . mysql_error());mysql_select_db("SB") or die ("Could not select database");mysql_query('set NAMES utf8');///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////   $search_query = "SELECT * FROM marks WHERE uid2='$viewer_id' ORDER BY `date` DESC LIMIT 5";$query = mysql_query($search_query);  if(!$query){echo "<p class='text'>Код ошибки:</p>";echo exit(mysql_error());}if (mysql_num_rows($query) > 0){$myrow = mysql_fetch_array($query); do{printf("<meta http-equiv=\"content-type\" content=\"application/xhtml+xml; charset=utf-8\" />        ".$myrow['uid1]."    ");  }while ($myrow = mysql_fetch_array($query));} else echo "<center><table><tr><td><div style="color:#777777;text-align:center;font-size:13px;padding:100px 0px">Нет такого.</span></td></tr></table></center>";?>    
Код выше выводит id на пример "123" - как из него достать имя фамилию и аватар?
Аватара пользователя
Влад
Модератор
Модератор
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24

Re: Получение профиля пользователя с готового id

Сообщение Влад »

UP
Аватара пользователя
ukhov
Модератор
Модератор
Сообщения: 1343
Зарегистрирован: 04 янв 2011, 21:19

Re: Получение профиля пользователя с готового id

Сообщение ukhov »

sdelat zapros k kontaktu cherez php vk.qpi, tochno znayu chto nedavno na forume kto-to pisal script polucheniya avatara
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Получение профиля пользователя с готового id

Сообщение Александр »

Влад
Можешь получать имя, фамилию и аватар прямо в php коде - Использование APIConnection (getProfiles).

Если нужно получить id именно в javascript, то обратись из яваскрипта к php скрипту и получи нужные данные

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

$.post('http://flapps.ru/get_uid.php', { "param": 1},                function(data){                                // функция после выполнения передачи данных скрипту                }, "json");
Это код если отправлять post запрос с параметрами, а сервер будет возвращать ответ в json формате. Используется jQuery.
Если нужен get запрос, то выполняется почти так же.
Аватара пользователя
Влад
Модератор
Модератор
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24

Re: Получение профиля пользователя с готового id

Сообщение Влад »

Я попробую http://flapps.ru/forum/topic2308.html вот эту тему, это вроде то что нужно мне. Хотя может и вариант Александра подойдет.
Аватара пользователя
Влад
Модератор
Модератор
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24

Re: Получение профиля пользователя с готового id

Сообщение Влад »

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

 <meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8" /><?require 'vkapi.class.php'; $api_id = ololo; $secret_key = 'olololol';  $db_host="localhost";   $db_user="ololol";    $db_password="ololol";    $db_name = "ololo";  $table_name = "ololo";     mysql_connect($db_host, $db_user, $db_password) or die (mysql_error());mysql_select_db($db_name) or die (mysql_error());mysql_query("SET NAMES 'utf8'");  $query = 'SELECT * FROM `'.$table_name.'`ORDER BY `ololo` DESC LIMIT 5';$sql = @mysql_query($query);  while ($sql_data = @mysql_fetch_array($sql)) { $ox="".$sql_data['uid']."";        }  $VK = new vkapi($api_id, $secret_key);$resp = $VK->api('getProfiles', array('uids'=>$ox)); echo $resp['response'][0]['first_name'].' ';echo $resp['response'][0]['last_name'].'<br />'; ?>  
Половина проблем позади, уже разобрался с выводом - но возникла другая проблема. Собственно вопрос, почему выводит только 1 результат имени и фамилии? Что я не так делаю.

Суть понимаю, причина в этом месте

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

while ($sql_data = @mysql_fetch_array($sql)) { $ox="".$sql_data['uid']."";      }
Для кода нужно чтоб вывод был 1,2,7,65 а у меня как-то по одному выводит, очень странно!
Аватара пользователя
Влад
Модератор
Модератор
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24

Re: Получение профиля пользователя с готового id

Сообщение Влад »

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

 while ($sql_data = @mysql_fetch_array($sql)) { $VK = new vkapi($api_id, $secret_key); $resp = $VK->api('getProfiles', array('uids'=>"".$sql_data['uid'].","));} 
Так же не помогло, но уже ближе!
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Получение профиля пользователя с готового id

Сообщение Александр »

Влад

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

$ox="".$sql_data['uid']."";
У тебя в $ox всегда перезаписывается значение.

Делай

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

echo $ox;
И убедись что в переменной именно то, что ты хочешь передать серверу api.

Для добавления в строку

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

$ox .= $sql_data['uid'].",";
и не забудь снова вывести содержимое переменной $ox прежде чем отправлять в запросе. Там будет лишняя запятая - удали её.
Аватара пользователя
Влад
Модератор
Модератор
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24

Re: Получение профиля пользователя с готового id

Сообщение Влад »

СПАСИБО АЛЕКСАНДР!!! ВСЕ РАБОТАЕТ!!! 8-)
Аватара пользователя
Влад
Модератор
Модератор
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24

Re: Получение профиля пользователя с готового id

Сообщение Влад »

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

while ($sql_data = @mysql_fetch_array($sql)) {  $ox .= $sql_data['uid'].",";$ololo .= $sql_data['wiwe'].",";}   $VK = new vkapi($api_id, $secret_key); $resp = $VK->api('getProfiles', array('uids'=>$ox));$ol= array('wiwe'=>$ololo);  // выводим полученные данные echo $resp['response'][0]['first_name'].' ';echo $resp['response'][0]['last_name'].'<br />';echo $ol['response'][0]['wiwe'];echo $resp['response'][1]['first_name'].' ';echo $resp['response'][1]['last_name'].'<br />';echo $resp['response'][2]['first_name'].' ';echo $resp['response'][2]['last_name'].'<br />';echo $resp['response'][3]['first_name'].' ';echo $resp['response'][3]['last_name'].'<br />';echo $resp['response'][4]['first_name'].' ';echo $resp['response'][4]['last_name'].'<br />';echo $resp['response'][5]['first_name'].' ';echo $resp['response'][5]['last_name'].'<br />';echo $resp['response'][6]['first_name'].' ';echo $resp['response'][6]['last_name'].'<br />';echo $resp['response'][7]['first_name'].' ';echo $resp['response'][7]['last_name'].'<br />';echo $resp['response'][8]['first_name'].' ';echo $resp['response'][8]['last_name'].'<br />';echo $resp['response'][9]['first_name'].' ';echo $resp['response'][9]['last_name'].'<br />'; 
Новый вопрос, как присвоить этим id которые я вывел параметр с другого поля таблицы? Через массив у меня кривые руки. Может кто-то что-то знает?
Ответить