Flask实现普通用户和管理员用户同页面登录

Flask实现普通用户和管理员用户同页面登录
1.效果图
1.1前端登录页面
前端登录页面
2.前端登录表单代码:
主要是设置用户登录身份的选择框

<form id="" action="/login" method="post">
                <div class="reg-same">
                  <dl>
                    <dt>用户名:</dt>
                    <dd><input type="text" class="text" name="username" value="" id="userName" placeholder=""></dd>
                  </dl>
                   <dl>
                    <dt>密码:</dt>
                    <dd><input type="password" class="text" name="password" value="" id="userPassword" placeholder=""></dd>
                  </dl>
                  <dl>
                    <li id="role">
                    <dt>账号类型:</dt>
                    <dd> <label>求职学生</label><input type="radio" checked="checked" name="identype" value="student" />
                         <label>招聘企业</label><input type="radio" name="identype" value="com" />
                         <label>管理员</label><input type="radio" name="identype" value="admin" /></dd>
                    </li>
                  </dl>
                   <dl>
                    <dd>
                    <input type="submit" name="submit" id="loginBtn" value="登录">
                    </dd>
                  </dl>
                </div>
              </form>

3.后台接收表单代码
主要是接收用户名、密码、身份,判断用户登录身份,并进行不同操作

#实现学生、管理员、企业用户登录功能
@app.route('/login/',methods=['GET','POST'])
def login():
    form = Login()
    print("这里是登录页面")
    if request.method == 'POST':
        print("这里是学生登录页面")
        user_info = request.form.to_dict()
        print(user_info.get('identype'))
        if user_info.get('identype')!= '':
            if user_info.get('identype') == 'student':
                #学生登录
                user = Student.query.filter_by(stu_name=user_info.get('username'),pwd=user_info.get('password')).first()
                if user is None:
                    # session['msg'] = '账号或密码错误!'
                    return redirect(url_for('login'))
                else:
                    #login_user(user)
                    session['name'] = user.stu_name
                    print("学生登录测试:" + user.stu_name + "  成功登录")
                    return redirect(url_for('stu_main'))
            elif user_info.get('identype') == 'com':
                #企业登录
                user = QYXX.query.filter_by(username=user_info.get('username'),pwd=user_info.get('password')).first()
                if user is None:
                    # session['msg'] = '账号或密码错误!'
                    return redirect(url_for('login'))
                else:
                    # login_user(user)
                    session['name'] = user.username
                    print("企业登录测试:" + user.username + "  成功登录")
                    return redirect(url_for('com_main'))
            else:
                #管理员登录
                user = Admin.query.filter_by(admin_name=user_info.get('username'),admin_pwd=user_info.get('password')).first()
                if user is None:
                    # session['msg'] = '账号或密码错误!'
                    return redirect(url_for('login'))
                else:
                    # login_user(user)
                    session['name'] = user.admin_name
                    print("管理员登录测试:" + user.admin_name + "  成功登录")
                    return redirect(url_for('sup_main'))
    return render_template('login_withChoose.html')

文章推荐:

JAVA实现普通用户和管理员用户同页面登录
JAVA学生和老师同页面登录项目
JAVA实现学生和老师同页面登录博文

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yue200403

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值