登录表结构

AAB*_*AAB 1 php mysql

我有一个数据库'practice'.我正在尝试建立允许用户登录并以表格形式提交数据的数据库.

管理员为少数用户添加用户名和密码.然后用户使用密码和用户名登录.

现在,由于管理员添加了用户,他的功能必须与用户不同,并且要为他加载不同的页面以便识别admin.我已在表中添加了以下管理列.

authenticate table
username | password | admin
----------------------------
admin    | 7821y34n | 1
 007     |  435432  | 0
Run Code Online (Sandbox Code Playgroud)

admin是tinyint类型if 1 then admin if 0 then user 这是创建验证表的方法吗?

Mer*_*lin 5

一个好的做法是将ROLE表映射到表,USER这样用户可以拥有多个角色.

对于我在评论中提到的第二个问题,我会将所有数据放在user表中,但如果你需要在两个表中分开数据,你可以这样做.

只需将user_details表映射到user表即可.(user_iduser_details)

用户

ID | USERNAME | PASSWORD  
-------------------------
1  | bill     | 09hk4352  /* password should be encoded */
2  | frank    | 7dfs3454 
Run Code Online (Sandbox Code Playgroud)

USER_DETAILS

ID | DOB         | USER_ID      
------------------------
2  | 1988-05-12  | 1  
Run Code Online (Sandbox Code Playgroud)

表格角色

ID | ROLE 
---------------
1  | ROLE_USER 
2  | ROLE_ADMIN  
3  | ROLE_GUEST
Run Code Online (Sandbox Code Playgroud)

USER_ROLE

ROLE_ID | USER_ID
------------------
1       | 2 /* user "frank" has ROLE_USER */
2       | 2 /* user "frank" has also ROLE_ADMIN */
1       | 1 /* user "bill" has ROLE_USER */
Run Code Online (Sandbox Code Playgroud)