Hướng dẫn dùng set-user trong PHP

Giải pháp quản lý trạng thái login -> Thực tế:
- Cách 1: Chỉ cho phép người dùng login vào 1 web tại 1 thời điểm
	- Ko cần thêm bảng:
- Cách 2: Cho login nhiều trình duyệt + ở nhiều thiết bị
	- Thêm bảng để làm

Ý tưởng giải pháp
	1] Login -> nhập thông tin
		- Login thành công
			- Lưu thông $_SESSION['currentUser'] = dữ liệu người -> Tồn tại trong 1 khoảng thời gian ngắn
			- Tạo ra token = giải thuật -> mỗi 1 người + tại một thời điểm login -> duy nhất -> ko trùng vs người khác
			- Lưu token vào database [user: Cách 1, tokens [id người dùng, token]: Cách 2] -> Tồn tại tới khi xóa thì thôi
			- Lưu token vào cookie [1 tuần, 1 tháng, 1 năm -> OK]
			-> Validate trạng thái đã login bằng cách nào
				- B1. Check $_SESSION['currentUser']
					-> Tồn tại -> OK -> Xong login
					-> Ko tồn tại:
						- B2. Check tiếp:
							- Đọc token từ cookie [Không tồn tại -> chưa login]
							- Tìm token trong bảng tokens hoặc user
								-> thông tin người dùng -> lưu xuống $_SESSION['currentUser']
								-> Ko tìm thấy -> token fake -> login.php

		- Login thất bại: ko nói -> OK

-----------------------------------------------
alter table Users
add token nvarchar[32]

#api_user.php


Chủ Đề