Читайте последние новости на тему в ленте новостей на сайте: 🌎 🌎 🌎 🌎 🪐 делитесь и общайтесь в комментариях!

Уведомлений от Одноклассников и Вконтакте Для я i

Аутентификация через Одноклассники

Сегодня мы продолжим разговор о том, как создать аутентификацию ваших пользователей через социальные сети и сервисы. На этот раз возьмемся за «Одноклассники»!

Если кто пропустил предыдущую часть, то ее можно найти тут:

Чем вы обычно занимаетесь на «Одноклассниках»?
ОбщаюсьРазвлекаюсь

Заметка. Пример, созданный в данном уроке, предназначен для работы на локальном сервере.

Шаг 1. Регистрация нового приложения

Для работы примера вам нужно будет самим зарегистрировать новое приложение и ввести собственные параметры. Для начала нам необходимо создать новое приложение на сайте социальной сети Одноклассники

На открывшейся странице выбираем вид приложения: «Вне Одноклассников»; тип приложения: «oAuth авторизация».

Уведомлений от Одноклассников и Вконтакте Для я i

После этого нам необходимо заполнить следующую форму:

Уведомлений от Одноклассников и Вконтакте Для я i

Название будет «Odnoklassniki Auth». Shortname — это тоже название приложения, но только то, что будет отображаться в url адресе: «ondoklassniki-oauth». Ссылка на приложение: http://localhost/odnoklassniki-auth . Таким образом, на локальном сервере нам потребуется создать папку «odnoklassniki-auth» и поместить все рабочие файлы туда.

Уведомлений от Одноклассников и Вконтакте Для я i

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

Уведомлений от Одноклассников и Вконтакте Для я i

Из письма мы можем извлечь такие параметры, как `Application ID`, `Публичный ключ приложения`, `Секретный ключ приложения` и `Ссылка на приложение`. Запишем их в специальные переменные в файле index.php:

Шаг 2. Генерация ссылки для аутентификации

Для генерации ссылки нам потребуется адрес аутентификации и специальные параметры:

С помощью функции http_build_query, передав туда массив параметров, получим чередование ключей и значений, как в url адресе. Итак, генерируем ссылку и выводим на экран:

Также тут я воспользовался функцией urldecode. Если этого не сделать, то в сгенерированной ссылке могут появиться закодированные символы слешей, знаков двоеточия и так далее:

Если же мы пропустим данную строку через функцию urldecode, то получим:

Итак, ссылка для аутентификации готова. Если мы сформировали все параметры правильным образом и получили верный url, то пройдя по ссылке, будем перенаправлены по адресу, указанному в настройках приложения (‘http://localhost/odnoklassniki-auth’). Только теперь к этому адресу будет прикреплен специальный параметр code:

Шаг 3. Получение токена

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

В первую очередь, снова сформируем параметры для этого запроса. Нам потребуется передать параметры: `code` — url параметр, пришедший от одноклассников; `redirect_uri` — страница, на которую будет возвращен пользователь; `grand_type`, равный значению «authorization_code» — код активации; `client_id` — id приложения; `client_secret` — секретный ключ:

Далее нам нужно отправить POST запрос на адрес http://api.odnoklassniki.ru/oauth/token.do, передав перечисленные параметры. В PHP выполнить POST запрос можно с помощью создания curl запроса:

В результате, при успешном выполнении запроса, в переменную $tokenInfo будет записан ответ от Одноклассников в JSON формате. Данная строка содержит 3 параметра: token_session — тип токена; refresh token — маркер обновления информации, access_token, который мы будем использовать в следующих запросах для извлечения информации о пользователе.

Для того чтобы мы далее могли работать с данными параметрами, декодируем JSON строку с помощью функции json_decode, и помещаем данные в массив, передав в качестве второго аргумента true.

Шаг 4. Получение информации о пользователе

Итак, теперь когда у нас есть параметры access_token, мы можем сделать запрос к Одноклассники API и получить информацию о пользователе. Перед тем, как мы подготовим массив с параметрами, которые в последствии превратим в фрагмент url строки, нам нужно сформировать специальную `подпись` запроса $sign с помощью конкатенации двух хэшей md5;

В параметр method записываем название метода API Одноклассников, который вернет нам информацию о пользователе; Далее передаем access_token, публичный ключ ( application_key), формат возвращаемых данных ( format) и подпись запроса ( sig).

Для получения информации о пользователе сформированные параметры нам нужно отправить GET запросом по адресу http://api.odnoklassniki.ru/fb.do:

В результате, если все было сделано правильно, то получим JSON ответ следующего вида:
Снова преобразуем JSON ответ в массив и обратимся к нулевому элементу, хранящемуся в массиве:

Шаг 5. Извлечение информации о пользователе

Теперь извлекать информацию о пользователе мы можем из массива, хранящегося в переменной $userInfo, по ключам uid, name, gender, birthdate, pic_2. Для просмотра большего количества полей загляните в содержание переменной $userInfo:

Шаг 6. И снова дело за вами

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

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

Вот и все. Теперь в вашей копилке на один рецепт больше, и вы можете порадовать ваших пользователей аутентификацией через социальную сеть «Одноклассники».

P.S. Отдельное спасибо хочу сказать всем, кто отписался в комментариях к предыдущей статье, ну и к этой тоже! В будущем буду стремиться учитывать ваши пожелания и предложения.

Данный урок подготовлен для вас командой сайта ruseller.com
Источник урока: www.ruseller.com
Автор: Станислав Протасевич
Урок создан: 13 Марта 2013
Просмотров: 88285
Правила перепечатки

5 последних уроков рубрики «PHP»

Фильтрация данных с помощью zend-filter

Когда речь идет о безопасности веб-сайта, то фраза «фильтруйте все, экранируйте все» всегда будет актуальна. Сегодня поговорим о фильтрации данных.

Контекстное экранирование с помощью zend-escaper

Обеспечение безопасности веб-сайта — это не только защита от SQL инъекций, но и протекция от межсайтового скриптинга (XSS), межсайтовой подделки запросов (CSRF) и от других видов атак. В частности, вам нужно очень осторожно подходить к формированию HTML, CSS и JavaScript кода.

Подключение Zend модулей к Expressive

Expressive 2 поддерживает возможность подключения других ZF компонент по специальной схеме. Не всем нравится данное решение. В этой статье мы расскажем как улучшили процесс подключение нескольких модулей.

Совет: отправка информации в Google Analytics через API

Предположим, что вам необходимо отправить какую-то информацию в Google Analytics из серверного скрипта. Как это сделать. Ответ в этой заметке.

Подборка PHP песочниц

Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт.

🗣 логин, адрес почты или телефон пароль

  • Google
  • Mail.ru
  • Facebook
  • Apple

Одноклассники — вход, моя страница, регистрация, восстановление пароля

На него СМС сообщением придет код для продолжения регистрации в социальной сети Одноклассники.

Одноклассники - Вход по номеру телефона или почте (читать далее...)
Далее потребуется заполнить анкету и указать следующие данные:

Одноклассники — Вход без регистрации, логина и пароля

  • Фамилию
  • Имя
  • Дату рождения (ДЕНЬ, МЕСЯЦ, ГОД)
  • Пол (Мужской или Женский)

Одноклассники — Регистрация

Информация о социальной сети Одноклассники:
  • логин, адрес почты или телефон
  • пароль
  • Личные данные (Введите имя, фамилию, возраст и город, указанные в вашем профиле)
  • Телефон
  • Почта
  • Логин
  • Ссылка на профиль (username или profile/1234567890)

Одноклассники — Восстановление пароля

Пароль должен состоять не менее чем из 6 знаков латинского алфавита.

Одноклассники — мобильные приложения

Вход осуществляется на официальном сайте социальной сети Одноклассники: https://ok.ru

Открывается новая страница и вам предлагают ввести тот самый номер телефона, на который зарегистрирован ваш профиль. Вводите и нажимаете на большую оранжевую кнопку «Искать».

Как восстановить пароль в Одноклассниках

Поскольку страница каждого пользователя привязана к номеру телефона, нужно выбрать Телефон.

(читать далее...)
Пользователь найден. Внимательно ознакомьтесь, ваши ли это данные указаны (здесь указывается номер привязанного телефона и, при наличии, адрес электронной почты). Если все верно, нажмите «Отправить код».

Введите код в строку восстановления пароля и нажмите «Подтвердить».

Вы забыли пароль. Входите на главную страницу Одноклассников и не знаете что делать. Обратите внимание на поля для ввода логина и пароля, там вы увидите ссылку «Забыли пароль?», нажмите на нее.
Некоторые пользователи спрашивают, что делать, если нет номера телефона, но есть адрес электронной почты? Пароль можно восстановить и на почту. Проделываете то же самое, что написано в начале статьи, только вместо телефона выбираете почту.

Вводите и нажимаете на большую оранжевую кнопку Искать.

Нам достаточно часто задают вопросы, касаемо Одноклассников. Среди эти вопрос есть и такой: забыл пароль в Одноклассниках, как восстановить? Процесс восстановления пароля достаточно прост, однако здесь есть свои нюансы. Впрочем, давайте обо все по порядку.

Что бы удалить эти данные, необходимо почистить куки в браузере. Например, для Google Chrome это можно сделать так:

Как удалить логин и пароль при входе в Одноклассники

Куда хуже, когда эти данные сохранились на чужом компьютере и теперь его владелец может смело попасть на вашу страницу.

(читать далее...)
Также мы рекомендуем отключить сохранение данных в браузере. Когда вы вводите пароль, то он спрашивает, стоит ли его сохранять, вы должны нажать «Нет» или «Никогда не сохранять для этого сайта». В случае с логином можно поступить проще: никогда не ставьте галочку рядом с пунктом «Запомнить меня» при авторизации на Одноклассниках.

Наверняка вы уже не раз сталкивались с таким необычным явлением, когда логин или пароль (или все вместе) сохраняется при входе в Одноклассники на главной странице. Если вы пользуетесь компьютером дома, то это не должно доставлять никаких неудобств. Куда хуже, когда эти данные сохранились на чужом компьютере и теперь его владелец может смело попасть на вашу страницу.

Выбираете два пункта: «Файлы cookie, а также другие данные сайтов и плагинов» и «Пароли», как это показано на картинке. Выбираете «За все время», после чего жмете «Очистить историю».
Заходите на Одноклассники и видите, что никаких логинов и паролей больше нет. Правда, в таком случае будут удалены сохраненные данные и для других сайтов. А вот в Mozilla Firefox, например, можно удалить данные только для сайта ok.ru («Настройки» — «Приватность» — «Удалить отдельные куки» — в поиск добавляете ok.ru и удаляете все найденные куки).

Также мы рекомендуем отключить сохранение данных в браузере.

Ну а если браузер все-таки запомнил какие-либо ваши данные, тогда придется воспользоваться удалением куков, как показано выше.

Как посмотреть пароль от Одноклассников на телефоне если забыл

Как узнать логин и пароль ОК

OK ru; вход по логину и паролю

§ Для использования на мобильных устройствах (смартфонах, планшетах) доступны для установки мобильные приложения :
🏫 Вход в в Одноклассники без регистрации, логина и пароля возможен через авторизацию :

Понравилось? Поделись с друзьями:
Оставить отзыв

Публикуя свою персональную информацию в открытом доступе на нашем сайте вы, даете согласие на обработку персональных данных и самостоятельно несете ответственность за содержание высказываний, мнений и предоставляемых данных. Мы никак не используем, не продаем и не передаем ваши данные третьим лицам.