Pythonweb定义一个表单界面,分为账户名和密码登录,后端视图函数对表单上输入的信息进行比对, 账户名为admin密码为123456若正确利用消息闪现提示登陆正确并跳转界面, 将用户名和密码存入session中 若不正确用消息闪现提示用户名或密码错误
时间: 2024-09-23 21:08:57 浏览: 32
在Python web开发中,特别是使用Flask或Django框架时,你可以创建一个HTML表单来接收用户的账户名和密码信息。这里是一个简单的示例:
```html
<!-- forms.py (前端模板文件) -->
<form method="POST" action="{{ url_for('login') }}">
<label for="username">账号:</label>
<input type="text" id="username" name="username"><br>
<label for="password">密码:</label>
<input type="password" id="password" name="password"><br>
<input type="submit" value="登录">
</form>
<!-- views.py (后端视图函数) -->
from flask import Flask, request, render_template, redirect, flash
app = Flask(__name__)
app.secret_key = 'your_secret_key' # 设置session秘钥
@app.route('/login', methods=['GET', 'POST'])
def login():
if request.method == 'POST':
username = request.form.get('username')
password = request.form.get('password')
if username == 'admin' and password == '123456':
session['logged_in'] = True
flash('登录成功!', 'success')
return redirect('/dashboard') # 跳转到首页
else:
flash('用户名或密码错误', 'danger')
return render_template('login.html') # 返回登录页面
if __name__ == '__main__':
app.run(debug=True)
```
在这个例子中,`login`视图函数首先检查请求是否为POST。如果是,它从表单中获取用户名和密码,并与预设值对比。如果匹配,则设置session标记用户已登录,显示成功消息,然后重定向。如果不匹配,就显示错误消息。
注意:在实际生产环境中,你需要处理更安全的方式存储和验证密码,比如哈希+盐。