Регистрация на своем сайте через ВКонтакте
27 мая 2018, 15:42
310

Мы начинаем цикл статей, в которых расскажем и покажем как сделать для своего сайта очень удобный функционал регистрации и/или авторизации для ваших пользователей на вашем сайте через социальные сети ВКонтакте, Одноклассники, Яндекс, Google и Mail.ru.

В данной статье рассмотрим регистрацию на сайте через социальную сеть ВКонтакте.

Создайте в корне своего сайта 2 папки, например social_login и social_login_callback. В первой будут храниться файлы для использования их в качестве прямых ссылок на инициализацию аутентификации в социальной сети, а во второй обработчики ответов от социальных сетей

Создайте новое приложение в социальной сети ВКонтакте

В открывшейся форме введите название приложения, выберите тип “Веб-сайт”, укажите адреса сайта и базовый домен сайта.

создание приложения вконтакте

После нажатия на кнопку “Подключить сайт”, вам придётся ввести проверочный код, который придёт по смс. После ввода кода, перейдите в раздел Настройки.

настройки приложения вконтакте

Из данной формы нам понадобятся такие данные, как `ID приложения`, `Защищённый ключ`, `Доверенный redirect URI:`.

Доверенный redirect URI: вам нужно прописать полный путь к файлу обработчика ответа от социальной сети, в нашем случае: https://seolik.ru/social_login_callback/vk.php

Обратите внимание, что такие данные как `Защищённый ключ` в примере у нас изменены на фиктивные, так как публикация реальных данных поля `Защищённый ключ` может повлечь за собой удаление приложения или даже вашего аккаунта в социальной сети.

Создаем файл vk.php в папке social_login (пример можно будет скачать в конце статьи) и записываем в него код:

Смотреть код

Теперь у нас готова ссылка при переходе по которой пользователь инициирует авторизацию через социальную сеть, а именно ссылка имеет вид https://site.ru/social_login/vk.php

Для того, чтобы получить ответ от социальной сети и  email юзера создадим файл vk.php, но теперь в папке social_login_callback и запишем в него следующий код:

Смотреть код

Т.е теперь при успешном ответе от социальной сети, т.е если юзер разрешил доступ к своей информации и у него указан email в настройках профиля, в ответе вы получите данные о нем, в том числе и его email. Ну а дальше дело за вами, создавайте для него аккаунт у вас на сайте на основе его email.

СКАЧАТЬ ПРИМЕР

СМОТРЕТЬ ПРИМЕР