В связи с переходом на новый движок... возможны сбои в работе! Простите!
Работы производятся прямо сейчас 29-03-2024! 🞨
Меню :
vk (4)



Blog (1399)
php (331)
js (244)
html (147)
css (131)
html tags (62)
js tag (56)
jquery (42)
text (37)
js method (36)
php array (33)
js date (33)
form html (30)
online (29)
fonts (26)
Показать еще :
ruweb.net (25)
foto (22)
atom (20)
php file (20)
forum (19)
svg (18)
input (18)
hosting (18)
php date (17)
php time (16)
board (16)
html book (16)
info (16)
color (15)
js time (14)
js events (14)
img (14)
js url (14)
знак (13)
notepad (13)
select (13)
osclass (13)
htaccess (13)
php path (12)
keyboard (12)
table (12)
download (12)
php img (12)
dw block (12)
form (11)
icon (11)
jsphp (11)
alphabet (10)
js delete (10)
mouse (10)
yandex (10)
keyframes (10)
chart (9)
hover (9)
dosite (9)
browser (8)
php post (7)
comment (7)
php url (7)
mysql (6)
php get (6)
vs code (6)
iframe (6)
adminka (6)
list (6)
click (6)
canvas (6)
js math (5)
reg.ru (5)
tag a (5)
heading (5)
ftp (5)
js id (5)
mb (5)
value (5)
year (5)
month (4)
week (4)
bbcode (4)
base64 (4)
day (4)
games (4)
symbols (4)
php var (4)
task (4)
js form (4)
scandir (4)
ssl (4)
pages (4)
нок (4)
xml (4)
console (4)
flags (4)
vk (4)
submit (4)
js img (3)
domen (3)
line (3)
padding (3)
jquery post (3)
куб (3)
money (3)
js post (3)
captcha (3)
numbers (3)
https (3)
js hash (3)
ucoz (3)
qr kod (2)
seo (2)
js vars (2)
prompt (2)
counter (2)
details (2)
height (2)
video (2)
youtube (2)
sitemap (2)
tag hr (2)
typeof (2)
рся (2)
google (2)
arrows (2)
rutube (1)
cursor (1)
нод (1)
archive (1)
scroll (1)
jino (1)
smile (1)
windows (1)
speed (1)

Авторизация vk

"авторизация vk". Создание ссылки "Войти через ВКонтакте". Получение токена, данные пользователя ВКонтакте.

Пошаговая авторизация через api vk

  1. Создаем приложение для авторизации через api vk
  2. Делаем ссылку : "Войти через ВКонтакте"
  3. Получаем данные для авторизации api vk
  4. Что делать с полученными данными при авторизации vk?

  1. Создаем приложение для авторизации через api vk

    Для того, чтобы создать приложение нам понадобится:

    Заходим на сайт и создаем приложение

    Заполняем данные:

    Нажмите, чтобы открыть в новом окне.
    Создаем приложение для авторизации через api vk

    Далее в настройках приложения нам потребуется 3 позиции:
    1). "ID приложения"(копируем)
    2). "Защищённый ключ"(копируем)
    3). Состояние - "включено и видно всем".

    Нажмите, чтобы открыть в новом окне.
    Создаем приложение для авторизации через api vk

  2. Делаем ссылку : "Войти через ВКонтакте"

    Переходим ко второму шагу - авторизации через api vk - нам нужна ссылка вида : "Войти через ВКонтакте"

    client_id = ID приложения → см. создание приложения... там было копируем. Помещаем в ниже идущий код.

    redirect_uri - создаем страницу вида : "https://ваш_сайт.com/login_vk.php" - после выполнения первой части кода авторизации мы вернемся(автоматически перекинет) на эту страницу!

    scope - доступ к емайлу.

    <?

    $params = array(

    'client_id' => 'ID приложения',

    'redirect_uri' => 'https://example.com/login_vk.php',

    'scope' => 'email',

    'response_type' => 'code'

    );

    $url = 'https://oauth.vk.com/authorize?' . urldecode(http_build_query($params));

    echo '<a href="' . $url . '">Войти через ВКонтакте</a>';

    ?>

    Если все сделано правильно:

    Далее при нажатии на ссылку "Войти через ВКонтакте"

    Должно появиться вот такое окно:

    Делаем ссылку : ‘Войти через ВКонтакте‘

  3. Получаем данные для авторизации api vk

    После того, как пользователь согласится, то его перекинет на страницу

    на redirect_uri, к URL добавляются GET-параметры:

    https://example.com/login_vk.php?code=1234567890

    Далее запрашивается access_token (в ответе с токеном будет e-mail). После этого выполняется метод users.get, который возвращает ID, имя, фамилию и URL аватара.

    На странице https://example.com/login_vk.php

    Помещаем код:

    <?

    if (!empty($_GET'cod'])) {

    $params = array(

    'client_i' =>'ID приложени',

    'client_secre' =>'Защищённый клю',

    'redirect_ur' =>'https://example.com/oauth-vk.ph',

    'cod' => $_GET'cod']

    );

    // Получение access_token

    $data = file_get_contents'https://oauth.vk.com/access_token' . urldecode(http_build_query($params)));

    $data = json_decode($data, true);

    if (!empty($data'access_toke'])) {

    // Получили email

    $email = $data'emai'];

    // Получим данные пользователя

    $params = array(

    '' =>'5.8',

    'uid' => $data'user_i'],

    'access_toke' => $data'access_toke'],

    'field' =>'photo_bi',

    );

    $info = file_get_contents'https://api.vk.com/method/users.get' . urldecode(http_build_query($params)));

    $info = json_decode($info, true);

    echo $email;

    print_r($info);

    }

    }

    ?>

    Если все правильно сделано, то получится вот такой ответ:

    Это будет в том числе массив:

    xxxx@xx.ru

    array(

    "response" => array(

    0 => array(

    "id" => 12345678,

    "first_name" => "Имя пользователя",

    "last_name" => "Фамилия пользователя",

    "photo_big" => "https://vk.com/images/camera_200.png?ava=1"

    )

    )

    )

    Сокращаем массив.

    Массив получается вложенный... его можно сократить - это будет, просто, удобнее...

    Поместите эту строку перед выводом "print_r"

    $info = $info[response][0];

    Ваш массив будет вот такого вида:

    array(

    "id" => 12345678,

    "first_name" => "Имя пользователя",

    "last_name" => "Фамилия пользователя",

    "photo_big" => "https://vk.com/images/camera_200.png?ava=1"

    )


  4. Что делать с полученными данными при авторизации vk?

    Записываем данные на носитель...

    Либо это база данных

    Либо это файл.

    Дальнейший алгоритм действий при авторизации vk?

    Запускаем сессию . Создаем сессию пользователя vk, например:

    $_SESSION['user']['name'] = $info[first_name];
    $_SESSION['user']['email'] = $email;
    И др...

    Создаем куки.

    Куки нам понадобятся для автоматической авторизации, например после окончания жизни сессии.

    И ниже получившегося кода создаем условие с(например) приветствием:

    if($_SESSION['user']['name']) { echo 'Здравствуйте '. $_SESSION['user']['name']; }

Не стесняемся говорить спасибо!
Помочь проекту DwWeb.ru

Поделиться ссылкой! C друзьями или врагами!

Этим вы очень поможете проекту! Заранее огромное спасибо!

Теги:
vk авторизация авторизация через vk vk api авторизация vk com авторизация vk id авторизация vk api авторизация vk авторизация токен vk авторизация на сайте vk авторизация php авторизация через api vk vk api авторизация по логину и паролю vk api авторизация по токену
Ещё : dwweb.ru есть здесь:
ruweb
Все статьи авторские, при копироавании активная ссылка обязательна DwWeb.ru! © 2015 - 2024 Контакты. Реклама на сайте Лучший хостинг : RUWEB + помощь по RUWEB
Страница загружена за : 0.021984 секунд. Подробнее