from flask import Flask,render_template,request,redirect,url_for from flask_sqlalchemy import SQLAlchemy import config app = Flask(__name__) app.config.from_object(config) db=SQLAlchemy(app) class User(db.Model): __tablename__ = 'User' id = db.Column(db.Integer,primary_key=True,autoincrement=True) username = db.Column(db.String(20),nullable=False) password = db.Column(db.String(20), nullable=False) nickname = db.Column(db.String(20)) db.create_all() # user=User(username='mis1234',password='111111') # db.session.add(user) # db.session.commit() @app.route('/') def base(): return render_template("base.html") @app.route('/login/', methods=['GET', 'POST']) def login(): if request.method == 'GET': return render_template("denglu.html") else: username = request.form.get('username') password = request.form.get('password') user = User.query.filter(User.username == username).first() if user: if user.password == password: return redirect(url_for('base')) else: return '密码错误' else: return '用户名不存在' @app.route('/regist/', methods=['GET', 'POST']) def zhuce(): if request.method == 'GET': return render_template("zhuce.html") else: username = request.form.get('username') password = request.form.get('password') nickname = request.form.get('nickname') user = User.query.filter(User.username == username).first() if user: return '用户名已存在' else: user = User(username=username, password=password, nickname=nickname) db.session.add(user) # 数据库,添加操作 db.session.commit() return redirect(url_for('login')) @app.route('/fabu/') def fabu(): return render_template('question.html') if __name__=='__main__': app.run(debug=True)
{% extends'fumoban.html' %} <html> <head> <meta charset="UTF-8"> <title>登录</title> {% block head %} <link href="../static/css/zhuce.css" rel="stylesheet" type="text/css"> <script src="../static/js/denglu.js"></script> {% endblock %} </head> <body> {% block main %} <div><h1>用户登录</h1></div> <form action="{{ url_for('login') }}" method="post"></form> <div class="aa"><script>document.write("loading....")</script> </div> <div class="flex-container"> <form class="form" method="post" action="{{ url_for('login') }}"> <div class="box"> <div class="input_box"> 登录 <input id="uname" name='username'type="text" placeholder="输入用户名"> </div> <br> <div class="input_box"> 密码 <input id="upass" name='password'type="password" placeholder="输入密码"> </div> <br> <div id="error_box"><br></div> <div class="input_box"> <button onclick="fnLogin()">登录</button> </div> </div> </form> </div> {% endblock %} </body> </html>