Python---flask框架实现修改密码功能

数据库部分:

 1 #重置密码
 2 def reset_pass(phone,password):
 3     conn,cursor=get_conn()
 4     sql="update userdata set userpass='"+password+"' where userphone='"+phone+"'"
 5     try:
 6         print("正在修改密码...")
 7         resetflag=cursor.execute(sql)
 8         conn.commit()
 9         close_conn(conn,cursor)
10         if(resetflag==1):
11             print("修改成功")
12             return 1
13         else:
14             print("修改失败!")
15             return 0
16     except:
17         print("系统错误...修改密码失败!")
18         return 0

路由部分:

 1 #用户修改密码
 2 @app.route('/resetpass',methods=['GET', 'POST'])
 3 def resetpass():
 4     userphone=request.values.get('userphone')
 5     resetpass=request.values.get('resetpass')
 6     print("路由获得手机号:"+userphone+"\n")
 7     print("路由获得新密码:" + resetpass + "\n")
 8     flag=sql.reset_pass(userphone,resetpass)
 9     if(flag==1):
10         return jsonify({"data":1})
11     else:
12         return jsonify({"data":0})

html页面:

  1 <!DOCTYPE html>
  2 <html lang="en">
  3 <head>
  4     <meta charset="UTF-8">
  5     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6     <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7     <title>树懒电影---重置您的密码</title>
  8     <style type="text/css">
  9         #resetform{
 10             margin-top: 350px;
 11             margin-left: 750px;
 12         }
 13     </style>
 14 </head>
 15 <body>
 16     <form method="post" id="resetform">
 17         <tr>
 18             <td><input type="text" id="userphone" value="" placeholder="输入您的手机号码"></td>
 19         </tr><br>
 20         <tr>
 21             <td><input type="password" id="resetpass1" value="" placeholder="输入您的新密码"></td>
 22         </tr><br>
 23         <tr>
 24             <td><input type="password" id="resetpass2" value="" placeholder="再次输入您的新密码"></td>
 25         </tr><br>
 26         <tr>
 27             <td><input type="reset" value="清空"></td>
 28             <td><input type="button" id="resetbtn" onclick="resetpass()" value="提交"></td>
 29         </tr>
 30     </form>
 31 </body>
 32 </html>
 33 <script src="../static/js/jquery.min.js"></script>
 34 <script type="text/javascript">
 35     function resetpass(){
 36         var userphone=document.getElementById("userphone").value
 37         var resetpass1=document.getElementById("resetpass1").value
 38         var resetpass2=document.getElementById("resetpass2").value
 39         var submit_flag=1
 40         //判空
 41         if((userphone.length==0)||(resetpass1.length==0)||(resetpass2.length==0)){
 42             submit_flag=0
 43             alert("请把信息填写完整!")
 44         }
 45         //判断密码一致性
 46         if(resetpass2!=resetpass1){
 47             submit_flag=0
 48             alert("两次填写的密码不一致")
 49             document.getElementById("resetpass1").focus();
 50         }
 51         //判断手机号
 52         if(userphone.length!=11){
 53             submit_flag=0
 54             alert("手机号码应为11位!")
 55             document.getElementById("userphone").focus();
 56         }
 57         var regu =  /^1[3456789]\d{9}$/
 58         if(!(regu.test(userphone)) ){
 59             submit_flag=0
 60             alert("手机号码格式有误!")
 61             document.getElementById("userphone").focus();
 62         }
 63         //判断密码格式
 64         if(!((resetpass1.length>=6)&&resetpass1.length<=18))
 65         {
 66             submit_flag=0
 67             alert("密码长度应该为6-16位!")
 68             document.getElementById("resetpass1").focus();
 69         }
 70             var regex = new RegExp('(?=.*[0-9])(?=.*[a-zA-Z]).{6,18}');
 71             part_pass=resetpass1.split(" ")
 72         if((!(regex.test(resetpass1))) || part_pass.length!=1)
 73         {
 74             submit_flag=0
 75             alert("密码为数字+英文字母 且不可以包含空格!")
 76             document.getElementById("resetpass1").focus();
 77         }
 78 
 79         //发起请求
 80             if(submit_flag==1)
 81         {
 82             $.ajax({
 83                 url:"/resetpass",
 84                 data:{userphone:userphone,resetpass:resetpass2},
 85                 success: function (data) {
 86                     if (data.data==1)
 87                     {
 88                         alert("密码修改成功!")
 89                         window.open("/",'_self')
 90                     }
 91                     else
 92                     {
 93                         alert("修改密码失败!请重试")
 94                     }
 95                 },
 96                 error: function (xhr, type, errorThrown) {
 97                     // print("ajax请求失败!")
 98                 }
 99             })
100         }
101         // alert(submit_flag)
102     }
103 </script>

 

posted @ 2021-05-23 00:06  靠谱杨  阅读(526)  评论(0编辑  收藏  举报