zoukankan      html  css  js  c++  java
  • 完成登录功能,用session记住用户名

    import os
    DEBUG = True
    
    SECRET_KEY = os.urandom(24)
    
    DIALECT = 'mysql'
    DRIVER = 'mysqldb'
    USERNAME = 'root'
    PASSWORD = 'ROOT'
    HOST = 'localhost'
    DATABASE = 'mis_db'
    SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:19940224@localhost:3306/mis_db?charset=utf8'
    SQLALCHEMY_TRACK_MODIFICATIONS = False
    

      

    from flask import Flask
    from flask import render_template,request,redirect,url_for
    import config
    from flask_sqlalchemy import SQLAlchemy
    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),nullable=True)
    db.create_all()
    # 增加
    # user=User(username='yujiujiu2',password='11111',nickname='123456')
    # db.session.add(user)
    # db.session.commit()
    #查询
    # user=User.query.filter(User.username =='yujiujiu2').first()
    # print(user.username,user.password,user.nickname)
    #删除
    # user=User.query.filter(User.username =='vixx').first()
    # db.session.delete(user)
    # db.session.commit()
    #修改
    # user=User.query.filter(User.username =='vixx').first()
    # user.password='123456789'
    # db.session.commit()
    @app.route('/')
    def lx():
        return render_template('lx3.html')
    
    @app.route('/login/',methods=['GET','POST'])
    def login():
        if request.method=='GET':
            return render_template('lx2.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('lx'))
                else:
                    return u'密码错误'
            else:
                return u'账号不存在'
    
    
    @app.route('/regist',methods=['GET','POST'])
    def regist():
        if request.method=='GET':
            return render_template('lx.html')
        else:
            username=request.form.get('username')
            password=request.form.get('password')
    
            user = User.query.filter(User.username == username).first()
            # 判断用户名是否存在
            if user:
                return u'账号已存在'
            else:
                user = User(username=username, password=password)
                db.session.add(user)
                db.session.commit()
                return redirect(url_for('login'))
    @app.route('/fabu')
    def fabu():
        return render_template('fabu.html')
    
    if __name__ == '__main__':
        app.run(debug=True)
    

      

    {% extends 'lx3.html' %}
    {% block logintitle %}登录{% endblock %}
    {% block loginhead %}<script type="text/javascript" src="../static/js/js.js"></script>{% endblock %}
     <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet"  type="text/css" href="../static/css/webb.css" >
    
    <h1>
    
     用户界面
    
    </h1>
    
    
    <body class="body">
    {% block body %}
    
    <p id="demo">这是一个段落</p>
    <button type="button" onclick="displayDate()">显示日期</button>
    
    <div  class="bigdiv" id="container" >
    
    <div id="header" ><h2 align="center">登陆</h2></div>
    
    <div id="content">
    
         <form action="{{ url_for('login')}}"method="post">
         <div align="center">username:<input id="user" type="text" name="username" placeholder="请输入用户名" ></div> <br>
           <div align="center"> password:<input  id="upass" type="password" name="password" align="center"><br></div>
    
          <div align="center">  <input type="radio" name="role" value="stu">student
          <input type="radio" name="role" value="tea">teacher <br>
          <input type="checkbox" value="true"><span style="color: blueviolet">rember</span> <a href="www.gzcc.cn"> 登陆问题请点</a></div>  <br>
    
           <div align="center">
                <button type="submit" onclick=" return fuck()">登录</button>
            <input type="button" value="cancel"><br>
           </div>
        <div align="center">
             <div id="error_box"></div><br>
        </div>
         </form>
    </div>
    </div>
    {% endblock %}
    </body>
    </html>
    

      

  • 相关阅读:
    约数
    质数
    回炉重造之重读Windows核心编程-018-堆栈
    回炉重造之重读Windows核心编程-017- 内存映射文件
    换电脑遇到git的一些记录
    python3之迭代器和生成器
    python3之类和对象
    python3之错误和异常
    python3之函数
    python3之流程控制
  • 原文地址:https://www.cnblogs.com/zheng01/p/7872639.html
Copyright © 2011-2022 走看看