Работаю с API ВКонтакте и созрел вопрос: после авторизации пользователя через ВК я закидываю уникальный ключ в куки, при этом в бд сохраняю имя, фамилию, id, фото. После того как пользователь разлогинился, я удаляю куку, но каким образом при новом входе на сайт мне узнать, что это именно этот пользовался?
Объясните пожалуйста принцип хранения данных и повторной авторизации на сайте через API.
Что мне необходимо хранить в БД при повторной авторизации?
эх, делаете $_SESSION. записываете туда всё что вам надо
в куку записываете ID пользователя и дату последнего захода (но можно подделать тогда будет, поэтому зашифруйте ее как-нибудь с помощью симметричного алгоритма шифрования DES, например, так как важно быстро расшифровывать, а он по скорости вроде нормальный, но и устаревший правда, но для этой задачи подойдет)
после того, как пользователь разлогинился, удаляйте сессию, а не куку
Xenywest, как я помню - ключ в вк достаточно приватный объект, поэтому в куки не записывайте, записывайте в базу в качестве логина,
структура таблицы такая: id | token | lastlogin и еще что-нибудь
Евгений Крамор, если пользователь почистит куки - вы его никак не идентифицируете, пока он не даст о себе знать
представьте, что он сменил компьютер. как вы поймете , что это он?
Xenywest, да, разумеется я никак не узнаю, что это он. Единственное, что является неизменным, это его идентификатор. Как я понимаю, в случае чистки кук и удаления сессии, я сверяю идентификатор, который я записывал ранее в БД, с идентификатором, которые вновь проходит авторизацию, после чего обновляю токен, время входа и так далее.