数据库中用户登录注册用户信息表怎么设计如何设计
来源:互联网 发布:淘宝满减后再退货 编辑:程序博客网 时间:2024/06/05 00:23
用户登录
站内登录:用户信息+密码的验证形式;
用户名+密码,
手机+密码,
站外授权:第三方登录,
其实它也是用户信息+密码的形式,
用户信息即第三方系统中的ID(第三方登录一定会给一个在他们系统中的唯一标识),密码即access_token,只不过是一种有使用时效定期修改的密码。
所以我们把它分离出了 用户基础信息表 + 用户授权信息表。
例如:
用户信息表 users
id int(10)序号
nickname varchar(20)昵称
headimg varchar(255)头像
测试数据记录:
id|nickname|headimg
1|红中铭科技|xxx/headimg1.jpg
2|你好中国人工智能|xxx/headimg2.jpg
--------------------------------------------------
用户登录授权信息表 user_auths
id int(10)用户序号(用户信息表-外键user_id)
login_type tinyint(2)登录类型(3:phone,2:email,1:uname)或(4:wechat,5:weibo)
openid varchar(50)用户的唯一标识(手机号号,邮箱地址,用户名或第三方应用的唯一标识)
login_token varchar(600)登录凭证(站内的保存用户密码,站外的不保存或保存api接口的access_token凭证)
注意:数据库字段结构仅供参考,如有更好的建议和意见请留言!
测试数据记录:
------------------------------------------------------------------------------------
id|user_id|login_type|openid|login_token
1|1|username|hzminc|4819db06a014cd14==>md5-bit16abc(hzminc.com)
2|1|phone|15888888888|e640626043da7f22==>md5-bit16abc(15888888888)
3|2|wechat|jm03026|SgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/46
------------------------------------------------------------------------------------
以上两条测试数据分析,两个测试用户,第一个用户可以绑定账户登录也可以绑定手机号登陆,即可实现多方式登陆,第二用户测是通过第三方微信接口获得站内登录授权。
流程说明:
程序流程与代码实现:用户使用 邮箱/用户名/手机号+密码登录验证的时,则先判断登录类型,若用户使用了手机号为登录类型,使用 SELECT * FROM user_auths WHERE type=’phone’ and openid=’15888888888’ 查询是否存在记录,如有,取出并判断数据库中login_token是否和登录提交登录表单数值相等,相符则通过授权验证,通过user_id查询用户信息表获取用户相应的基本信息资料。
- 数据库中用户登录注册用户信息表怎么设计如何设计
- 如何设计用户登录
- 如何设计用户登录
- 如何设计出用户体验良好的登录/注册页面
- 如何设计出用户体验良好的登录/注册页面
- 用户注册登录-交互设计分析
- app后端怎么设计用户登录方案
- app后端怎么设计用户登录方案
- 数据库之设计表:用户表信息以及第三方登录信息如何同步?
- 以小见大:如何设计注册登录页?
- android安卓Sqlite3数据库实现用户登录注册的代码设计详解
- 注册和登录设计
- 用户登录 日志表 设计
- 如何设计安全的用户登录功能
- vs2010 c# MySql 用户登录注册设计代码优化1
- 设计用户注册页面
- 用户注册页面设计
- 用户登录注册界面开发及用户信息管理案例详解
- Camera app 分析(三)拍照流程
- Android 中 弹出 Dialog 后监听 Back键 点击事件
- Maven的插件
- QT5.4 read access violation at: 0x0, flags=0x0 (first chance)
- 字符串中获取网站地址(网站匹配)源码
- 数据库中用户登录注册用户信息表怎么设计如何设计
- MySQL创建计算字段.md
- Android常用开源框架
- 深入理解HTTP协议
- 关于Mybatis关闭一级二级缓存
- 理论---Quartz
- 5、Kafka集群搭建
- 最简单的基于FFmpeg的封装格式处理:视音频复用器(muxer)
- 排名前50个开源的Web爬虫