zoukankan      html  css  js  c++  java
  • 密码修改机制

    USer表:
    
    Uniqid        :用户唯一标示符号
    UserName      :用户名,邮箱名称唯一
    UserPwd       :密码(hash加密)
    UserEmail     :用户邮箱
    Hash          :用于找回密码所使用的字符。
    
    
    
    
    *:涉及到两个页面,找回密码页面、修改密码页面。
    
    1、首先,用户点击找回密码链接,跳转到找回密码页面,页面上有两个input,一个是用来输入用户名,另一个用来输入邮箱。
    
    2、找回密码页面后台代码处理情况是:
        2.1、首先根据用户名,查找用户Email邮箱地址。
        2.2、如果邮箱地址不为空,那么就意味着用户名正确,同时我们也得到了用户的邮箱地址。相反,则提示出用户名不存在。
        2.3、在判断获取邮箱地址不为空时,我们同时生成一段标识码(hash码),然后用此值,修改相应用户中的Hash字段(用来在修改密码时判断,是否是正常的页面跳转修改,而不是非法操作)。
        2.4、之后我们将用户名和生成的一段标识码(hash码,此时数据库中该用户的Hash字段已经存有此段编码)组装,然后进行重编码,之后连接到修改密码页面的url(../resetUserPass.php?p=dT1saXRvdSZ4PTAwZTc1MGZlNmZjOGNkNGYyMjgzMDA3MWJlZDNmZTAw),发送到用户邮箱。
    
    3、用户在邮箱中接收到发送来的连接,点击之后跳转到修改密码页面。
    
    4、修改密码页面,后台处理情况是:
        3.1、前台页面,只有一个文本框和一个标签,文本框用来输入要修改的密码,标签来显示用户名。
        3.2、首先解析发送来的标识码(p=dT1saXRvdSZ4PTAwZTc1MGZlNmZjOGNkNGYyMjgzMDA3MWJlZDNmZTAw),得到用户名和前面所生成的唯一标识码(hash码)。
        3.3、之后,通过唯一标识码和用户名,修改密码(update User set UserPwd = 输入的新密码[经过加密] where UserName = 传来的用户名 and Hash = 唯一标示码)。(若修改的返回值若是1,则代表唯一标识码正确,用户名正确,密码修改成功。否则,密码修改失败。)
  • 相关阅读:
    家乡摔跤
    mportError: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found
    The connection to the server localhost:8080 was refused
    docker: error pulling image configuration: Get https://xx net/http: TLS handshake timeout
    Error from server (ServiceUnavailable): the server is currently unable to handle the request
    Error from server (NotFound): the server could not find the requested resource (get services http:heapster:)
    kubernetes1.18.2集群部署
    k8s知识2
    k8s知识1
    Codeforces 922.F Divisibility
  • 原文地址:https://www.cnblogs.com/KTblog/p/4986523.html
Copyright © 2011-2022 走看看