为了账号安全,请及时绑定邮箱和手机立即绑定

在C#,中如何处理用户每天只能有三次机会取回密码的问题

在C#,中如何处理用户每天只能有三次机会取回密码的问题

慕丝7291255 2018-09-18 08:05:41
如果,用户,输入的邮箱和身份证号,有三次是在自己的信息里不存在的就让他今天不能取回密码。
查看完整描述

2 回答

?
幕布斯7119047

TA贡献1794条经验 获得超8个赞

保险的话,可以做一个取回密码记录表,每取一次做一下记录,每取时也要按照时间查询一下当天是否超过三次,加上本次。然后做出反应,这样也相当于有个日志表,方便以后查看该用户每次取回密码时的详细时间和IP等。

还有一种就是给用户表加两字段,一个记录最后取回密码的时间,一个记录次数,当今天第一次取回密码的时候,判断时间字段是否是今天,如果不是则当前是第一次,则清空记录次数的字段,并加1,并更新时间字段。就这样,当然当天时间超过三次的时候就返回错误了。

建议采用第一种方法。


查看完整回答
反对 回复 2018-09-25
?
POPMUISE

TA贡献1765条经验 获得超5个赞

有2种方法:

1、建立一个cookies,用于保存获取次数并同时记录日期,如果日期为当天同时超过3次就不允许其取回密码,这个是最常用的方法而且是比较简单、消耗资源比较少的,许多网站都是这种做法。但是只要客户一旦清空了cookies就无效了,不太安全

2、在数据库中建立张表,字段:用户名、取回密码次数、取回密码时间,每次用户取回密码先在这张表中检查下今天这个用户有没取回过密码,如果没有取回过则新增一条记录,记录用户名、取回次数为1,取回时间,如果已经取回过则更新这个字段的取回次数+1和取回时间,满3次则不允许取回。这种方法比较烦,但是比较安全。

注意:这种方法在取回时需要将这个用户今天以前取回密码的记录删除掉,否则这张表记录会非常多


查看完整回答
反对 回复 2018-09-25
  • 2 回答
  • 0 关注
  • 473 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信