码迷,mamicode.com
首页 > 其他好文 > 详细

完成登录功能,用session记住用户名

时间:2017-11-22 22:05:08      阅读:287      评论:0      收藏:0      [点我收藏+]

标签:first   innerhtml   col   sub   字符   javascrip   radio   type   字母   

登录功能完成:

1、js:设置return

 1 function fnLogin() {
 2     var oUname = document.getElementById("uname")
 3     var oUpass = document.getElementById("upass")
 4 
 5     var oError = document.getElementById("error_box")
 6 
 7     oError.innerHTML="<br>"
 8     if (oUname.value.length > 20 || oUname.value.length < 6) {
 9         oError.innerHTML = "请输入用户名6-20位字符"
10        isErrer = false
11         return isErrer;
12     }else if ((oUname.value.charCodeAt(0)>=48)&&(oUname.value.charCodeAt(0)<=57)){
13         oError.innerHTML="用户名首字母必须是字母"
14        isErrer = false
15         return isErrer;
16     }else for(var i=0; i<oUname.value.length;i++){
17         if((oUname.value.charCodeAt(i)<48)||(oUname.value.charCodeAt(i)>57)&&(oUname.value.charCodeAt(i)<97)||(oUname.value.charCodeAt(i)>122)){
18             oError.innerHTML="用户名必须为字母或数字";
19             isErrer = false
20             return isErrer;
21         }
22 
23     }
24 
25 
26 
27 
28     if (oUpass.value.length > 20 || oUpass.value.length < 6) {
29         oError.innerHTML = "请输入密码 6-20位字符"
30          isErrer = false
31             return isErrer;
32     }
33 
34 
35         window.alert("登录成功")
36 
37 }

 

 

 

2、html:设置

form

input

 1 {% extends switch.html %}
 2 
 3 {% block logintitle %}欢迎来到登录界面,请登录{% endblock %}
 4 {% block loginhead %}<script type="text/javascript" src="../static/js/login.js"></script>{% endblock %}
 5 {% block loginbody %}
 6  <form action="{{ url_for(‘login‘) }}" method="post">
 7     <p id="meto">中国标准时间</p>
 8 <script>document.getElementById("meto").innerHTML = Date()</script>
 9 <div id="container" style="width: 300px  ">
10 
11     <div id="header" style=" padding: 0px; line-height: 1.8; color: rgb(128, 0, 0);">"><h2 align="center">登陆界面</h2></div>
12 
13     <div id="content">
14 
15             <p align="center">用户名:<input id="uname" type="text" name="user" placeholder="请输入账号">
16 
17             </p>
18             <p align="center"> 密码&nbsp:<input id="upass" type="password" name="psw" placeholder="请输入密码"></p>
19 
20             <br>
21             <div id="error_box"><br>
22             </div>
23             <input type="radio" value="stu">学生
24             <input type="radio" value="tea">老师
25             <br>
26 
27             <input type="checkbox" value="true">记住密码 <a href="">登陆遇到问题</a><br>
28 
29          <p align="center"><button type="submit" onclick="return fnLogin()">登录</button></p>
30             &nbsp&nbsp&nbsp
31 
32 
33 
34     </div>
35 
36     <div id="footer" style=" padding: 0px; line-height: 1.8; color: rgb(128, 0, 0);">"><h3 align="center">版权@</h3></div>
37 </div>
38 {% endblock %}

3、py:

@app.route设置methods

GET

POST

读取表单数据

查询数据库

用户名密码对:

记住用户名

跳转到首页

用户名密码不对:

提示相应错误。

 

 1 @app.route(/login/,methods=[GET,POST])# 跳转登陆,methods定义它有两种请求方式
 2 def login():
 3     if request.method == GET:
 4       return render_template(login.html)
 5     else:
 6         username = request.form.get(user)
 7         password = request.form.get(psw)
 8         user = User.query.filter(User.username == username).first()  # 判断用户名是否存在
 9         if user:
10             if
11             return   redirect(url_for(switch))
12         else:
13             return 用户名不存在

 

4、session:

  1. 从`flask`中导入`session`
  2. 设置`SECRET_KEY`
  3. 操作字典一样操作`session`:增加用户名`session[‘username‘]=`username
1 from flask import session
2 config.py
3 import os
4 SECRET_KEY = os.urandom(24)
5 session[user] = username

 

完成登录功能,用session记住用户名

标签:first   innerhtml   col   sub   字符   javascrip   radio   type   字母   

原文地址:http://www.cnblogs.com/honghui/p/7881066.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!