实现邮箱找回的思路分析

19 篇文章 0 订阅

一、数据库的需求

(1)首先数据表需要两个     一个user表  一个userforgot表

user表:



userforgot表:



(2)剖析表:user表存放的就是用户的基本信息,当我们的用户忘记密码时,则用到userforgot表来辅助找回密码


实现流程:

(1)首先进行当用户点击忘记密码时,进行用户验证,看用户是否存放在添入用户名、邮箱,进行user表验证

(2)如果(1)通过,则给表userfotgot表中插入一条数据,这些数据有(自增id,user_id是user表中的id,MD5str随机字符串,当前的时间戳,默认值为0的一个status状态)

(3)发送邮件,内容是一个拼接成的连接,主要带四个参数,就是插入userfotgot的那四个参数

(4)当同一个用户进行,多次点击忘记密码,也就是给用户的邮箱中发送了多条找回密码的邮件,如果我们不进行处理,那么这些链接是不是进行任意点击一条就可以实现密码找回呢?这样是不可以的,我们要做一个最近插入userforgot表的user_id进行密码找回,而在最近这条之前的连接,点击之后是不可以进行找回的,提示网页已经过期,这里我们可以从数据库查找出status为0且user_id为XX的,获取他的最大的id值,进行与邮箱返回连接的id值进行验证,如果是最大的id则可以进行密码找回,这样就可以实现其他的连接不可找回密码的屏蔽(注意:当我们点击的连接不是id不是最大的,此时我们要对status 进行修改为1)

(5)邮箱中点击进行测试,进入指定地址进行参数的接收,后与userfotgot进行数据验证(验证的方法:经四个参数作为条件查找,如果查到内容,则说明验证通过,,此时马上修改status为1,此时可以跳转至指定的页面设置新密码,后输入新密码即可)




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值