2017-01-07 3 views
-1

Мне нужно создать систему Token для регистрации пользователей. Вот как это работает ...PHP Time Management для простой системы Token


1. Войти Процесс

  1. PHP проверяет, является ли предоставленная информация действительна. Если он действителен, он движется дальше.
  2. Он создает токен в базе данных с идентификатором пользователя. Значок требовал некоторых значений, но в основном я сейчас сосредоточен на реализации create_time, expire_time.

Как создать позволяет сказать, что две переменные $ create_time и $ expire_time где $ create_time является значение прямо в настоящее время в выполнении сценария и $ expire_time это позволяет сказать, что 3 часа спустя $ create_time.


2. Токен Использование

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


Причина реализующей Tokens- Я пытался создать API для приложения. Вместо того, чтобы передавать Имя пользователя и Пароль через каждый запрос, я думал, что будет намного проще для использования клиентом, а также безопасности для предоставления токенов, а не полной информации с каждым запросом.

Спасибо за чтение и еще раз спасибо за ответ.

+0

Что базы данных вы используете – RiggsFolly

+0

Вы должны хранить маркер в пути, в котором различающая время создания и срок действия просты. Таким образом, чтобы проверить, действительно ли токен, вы получаете значение из базы данных, вырезаете все ненужные части, а затем сравниваете текущее время с временем истечения срока действия. – azdonald

+0

Там уже много материала, сделанного только для того, что вы хотите делать/использовать. Отправьте код, с которым у вас возникли трудности; мы будем рады помочь вам тогда. –

ответ

0

Просто установите переменные с помощью DateTime:

$create_time = new DateTime; 
$expire_time = new DateTime; 
$expire_time->modify('+3 hours'); 

Для проверки просто использовать что-то вроде этого:

$time_now = new DateTime; 
if($expire_time_from_db < $time_now){ 
//its expired 
}} 
+0

Я отредактировал его для вас! – Imphusius

+0

Не для меня, для ОП – RiggsFolly