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

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

时间:2017-11-22 21:52:22      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:设置   round   val   function   footer   switch   sub   div   return   

登录功能完成:

1、js:设置return

function fnLogin() {
    var oUname = document.getElementById("uname")
    var oUpass = document.getElementById("upass")

    var oError = document.getElementById("error_box")

    oError.innerHTML="<br>"
    if (oUname.value.length > 20 || oUname.value.length < 6) {
        oError.innerHTML = "请输入用户名6-20位字符"
       isErrer = false
        return isErrer;
    }else if ((oUname.value.charCodeAt(0)>=48)&&(oUname.value.charCodeAt(0)<=57)){
        oError.innerHTML="用户名首字母必须是字母"
       isErrer = false
        return isErrer;
    }else for(var i=0; i<oUname.value.length;i++){
        if((oUname.value.charCodeAt(i)<48)||(oUname.value.charCodeAt(i)>57)&&(oUname.value.charCodeAt(i)<97)||(oUname.value.charCodeAt(i)>122)){
            oError.innerHTML="用户名必须为字母或数字";
            isErrer = false
            return isErrer;
        }

    }




    if (oUpass.value.length > 20 || oUpass.value.length < 6) {
        oError.innerHTML = "请输入密码 6-20位字符"
         isErrer = false
            return isErrer;
    }


        window.alert("登录成功")

}

 

2、html:设置

form

input

{% extends switch.html %}

{% block logintitle %}欢迎来到登录界面,请登录{% endblock %}
{% block loginhead %}<script type="text/javascript" src="../static/js/login.js"></script>{% endblock %}
{% block loginbody %}
 <form action="{{ url_for(‘login‘) }}" method="post">
    <p id="meto">中国标准时间</p>
<script>document.getElementById("meto").innerHTML = Date()</script>
<div id="container" style="width: 300px  ">

    <div id="header" style="background-color: darkorange"><h2 align="center">登陆界面</h2></div>

    <div id="content">

            <p align="center">用户名:<input id="uname" type="text" name="user" placeholder="请输入账号">

            </p>
            <p align="center"> 密码&nbsp:<input id="upass" type="password" name="psw" placeholder="请输入密码"></p>

            <br>
            <div id="error_box"><br>
            </div>
            <input type="radio" value="stu">学生
            <input type="radio" value="tea">老师
            <br>

            <input type="checkbox" value="true">记住密码 <a href="">登陆遇到问题</a><br>

         <p align="center"><button type="submit" onclick="return fnLogin()">登录</button></p>
            &nbsp&nbsp&nbsp



    </div>

    <div id="footer" style="background-color: darkgoldenrod"><h3 align="center">版权@</h3></div>
</div>
{% endblock %}

 

 

3、py:

    1. @app.route设置methods
    2. GET
    3. POST
      1. 读取表单数据
      2. 查询数据库
        1. 用户名密码对:
          1. 记住用户名
          2. 跳转到首页
        2. 用户名密码不对:
          1. 提示相应错误。

 

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

 

 

session:

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

 

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

标签:设置   round   val   function   footer   switch   sub   div   return   

原文地址:http://www.cnblogs.com/guomeiting/p/7874995.html

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