主页 > 编程 > python >

python学生管理系统登录模块 flask session使用

2019-01-14 10:46 阅读:105 来源:智宇SEO自媒体

  运行环境:win10 64位 python3.5   Flask 0.12  pymysql 0.7.11   mysql 5.5

  文件:login.py(登录页面)  db.py(登录验证数据库操作)

  功能:完成学生用户登录验证

  实现:完成login登录后,后台主页显示登录名,退出注销session

python学生管理系统登录模块  flask session使用

login.py代码:
from flask import Flask,render_template,request,url_for,redirect,session
from datetime import timedelta
from db import *
import os
import config
app = Flask(__name__)
#静态文件缓存时间设置
app.config['SEND_FILE_MAX_AGE_DEFAULT']=timedelta(seconds=1)
app.config.from_object(config)
app.config['SECRET_KEY']=os.urandom(24)   #设置为24位的字符,每次运行服务器都是不同的,所以服务器启动一次上次的session就清除。
app.config['PERMANENT_SESSION_LIFETIME']=timedelta(days=7) #设置session的保存时间。
#登录
@app.route('/index',methods=['GET','POST'])
def index():
    seun = session.get('username')
    return render_template('index.html',seun=seun)
@app.route('/',methods=['GET','POST'])
def login():
    if request.method == 'POST':
        name = request.form['name']
        pwd = request.form['pwd']
        if loginCheck(name,pwd):
            session['username'] = name
            return redirect(url_for('index'))
        else:
            message = "用户名或者密码错误"
            return render_template('login.html',message=message)
    return render_template('login.html')
#退出系统
@app.route('/out',methods=['GET','POST'])
def out():
    session.pop('username')
    return redirect(url_for('login'))

if __name__ == '__main__':
    app.run()


完整代码下载  链接: https://pan.baidu.com/s/106cSz-xSJlvZ4_RT3cxNSQ 提取码: jube