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

База данных сайта через OAuth2 вконтакте

Добавлено: 30 июл 2013, 19:31
ari1997
Как сделать базу данных для пользователей вконтакте ? (hostinger.ru)
http://flapps.ru/forum/topic3931.html

Re: База данных сайта через OAuth2 вконтакте

Добавлено: 19 авг 2013, 15:11
Александр
ari1997
Какой именно этап интересует? Что получилось, что не получилось?

Re: База данных сайта через OAuth2 вконтакте

Добавлено: 23 авг 2013, 18:06
Koval
у меня не поллучилось !!:(http://three-facts.p.ht/as/login.php после того,как пользователь разрешает чтобы приложение имело доступ к его данным переадресовывает на callback.php и всё.дальше ничего

Re: База данных сайта через OAuth2 вконтакте

Добавлено: 24 авг 2013, 18:50
ari1997
Александр
Все этапы !!! :(

Re: База данных сайта через OAuth2 вконтакте

Добавлено: 24 авг 2013, 19:16
sasha^
ari1997
код устарел немного.. пару строк поменять и все ;)
http://test.a-lexander.com/

UPDATE:
 исправленный код
index.php

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

<?phprequire_once("config.php");if(isset($_SESSION['access_token'])) {    $uid = $_SESSION['user_id'];    $resp = file_get_contents('https://api.vkontakte.ru/method/getProfiles?uids='.$uid.'&fields=photo_big&access_token='.$_SESSION['access_token']);    $data = json_decode($resp, true);     echo 'Здравствуй, '.$data[response][0][first_name].' '.$data[response][0][last_name].        '<br /><img src="'.$data[response][0][photo_big].'" />';  } else {    require_once("redirect.php");}?>
confiq.php

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

<?// id приложенияdefine("CLIENT_ID", "3838701");// защищенный ключdefine("SECRET", "3qPpU2YH32P13PJJiK9M");// куда перенаправим пользователя после авторизацииdefine("OAUTH_CALLBACK", "callback.php");// настройки доступаdefine("SCOPE", "friends,photos,wall");// путь к папке со скриптамиdefine("PATH", "http://test.a-lexander.com/"); // включим сессиюsession_start();?>
callback.php

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

<?require_once("config.php");// получили параметр code if($_REQUEST['code']) {    // получаем access_token    $resp = file_get_contents('https://oauth.vk.com/access_token?client_id='.CLIENT_ID.'&client_secret='.SECRET.'&code='.$_REQUEST['code'].'&redirect_uri='.PATH.OAUTH_CALLBACK);    $data = json_decode($resp, true);     if($data['access_token']){        // запишем данные в сессию        $_SESSION['access_token'] = $data['access_token'];        $_SESSION['user_id'] = $data['user_id'];        // переадресуем пользователя на нужную страницу        header('Location: '.PATH.'index.php');        exit();    }}?>
login.php

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

<?require_once("config.php");if(isset($_SESSION['access_token'])) {    header('Location: index.php');    exit();}$link = 'http://api.vk.com/oauth/authorize?client_id='.CLIENT_ID.'&redirect_uri='.PATH.OAUTH_CALLBACK.'&display=popup&scope='.SCOPE.'&response_type=code';?><button onclick="location.href='<? echo $link ?>';">Войти ВКонтакте</button><br /> 
redirect.php

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

<?require_once("config.php");//перенаправляем на авторизациюheader('Location: '.PATH.'login.php');?>

Re: База данных сайта через OAuth2 вконтакте

Добавлено: 25 авг 2013, 11:08
ari1997
sasha^
ИИИИ ?? Где база ?
Я это и сам знаю !!!

Re: База данных сайта через OAuth2 вконтакте

Добавлено: 25 авг 2013, 15:07
sasha^
ari1997
аа)) я не прочитал название темы=)
а если сделать бд - легко...
берешь создаешь бд и т.д...
запросы - mysql_query :)
а при заходе - проверяет есть ли в бд или писать... или сделать поле uid - уникальным и тогда проверять mysql_insert_id() на неравность 0 и все...
ну почитайте как делать запросы к бд и все.. я принцип описал...

P.S. или урок по OAuth 2 с БД сделать?)

Re: База данных сайта через OAuth2 вконтакте

Добавлено: 26 авг 2013, 13:08
ari1997
sasha^
Лучше наверно урок )

Re: База данных сайта через OAuth2 вконтакте

Добавлено: 29 авг 2013, 12:11
ari1997
sasha^
Когда напишешь ?

Re: База данных сайта через OAuth2 вконтакте

Добавлено: 29 авг 2013, 12:27
sasha^
ari1997 я был занят... думаю в ближайшие день-два..
UPDATE: постараюсь сегодня..