python中的flask框架写简单的登录界面

flask框架和css的应用

实现的环境:

  • windows环境
  • eclipse下的pydev
  • pip3 install flask jinja2

步骤一:首先创建一个web.py

# -*- coding:utf-8 -*-
'''
Created on 2018年9月17日
@author: zkx
'''
from flask import Flask  #引入Flask类,Flask类实现了一个WSGI应用
from flask import request,render_template
app =Flask(__name__)  #app是Flask的实例,它接收包或者模块的名字作为参数,但一般都是传递__name__。    

@app.route("/") #使用app.route装饰器会将URL和执行的视图函数的关系保存到app.url_map属性上。
def first(): #处理URL和视图函数的关系的程序就是路由,这里的视图函数就是first。
    return "欢迎来到我的世界"

@app.route("/login",methods=['GET'])   #请求方式为get
def login():
    return render_template('l.html')

@app.route("/login",methods=['POST']) #请求方式为post
def loginin():
    if request.form['username']=='zkx' and request.form['password']=='zkx':
            username =request.form['username']
            return render_template('l.html',username='zkx',moban='moban')
    return render_template('one.html',username='username',moban='shurucuowu')
app.run( host='127.0.0.1', port=666, debug='True')#默认Flask只监听虚拟机的本地127.0.0.1这个地址,端口为666。

步骤二:如图所示 创建
在这里插入图片描述

编辑

<!DOCTYPE html>
<html >
<head >
<meta charset="utf-8">
<title >zkx</title>
<link type="text/css" rel="stylesheet" href={{ url_for('static', filename='css/zkx.css') }}> </link> 
</head>
<body>
{% if  message %}
<p style="color:red">{{ message }} </p>
{% endif %}
{{ moban }}
<form action="/login" method="post" >
            <p><input name="username" value="{{ username }}">账号</p>
            <p><input name="password" type="password">密码</p>
            <p><button type="subbmit"> 提交</button></p>
	</form>
</body>
</html>

步骤三:如图创建
在这里插入图片描述
编辑

form {
	background :blue	
}

注:模块中的说明
{{ }}——访问变量或变量的属性
{# #}——注释
{% include ‘footer.html’ %} ——导入另外一个模板到当前模板中
{% import ‘forms.html’ as forms %} ——导入模板,与上面的有部分不同
{{url_for(“static”,filename="…")}}——访问static文件夹中的文件
在这里插入图片描述

  • 7
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
好的,下面是一个基于 Flask 框架和 MySQL 数据库的登录注册界面的示例代码: 首先,需要安装 Flask 和 MySQL-Python 模块: ```bash pip install Flask pip install MySQL-Python ``` 然后,创建一个名为 `app.py` 的 Python 文件,用于启动 Flask 应用和处理请求: ```python from flask import Flask, render_template, request, redirect, url_for import MySQLdb app = Flask(__name__) # 连接 MySQL 数据库 db = MySQLdb.connect(host="localhost", user="root", password="password", db="mydatabase") # 注册页面 @app.route('/register', methods=['GET', 'POST']) def register(): if request.method == 'POST': # 获取表单数据 username = request.form['username'] password = request.form['password'] # 插入用户数据到数据库 cursor = db.cursor() cursor.execute("INSERT INTO users (username, password) VALUES (%s, %s)", (username, password)) db.commit() # 跳转到登录页面 return redirect(url_for('login')) # 显示注册页面 return render_template('register.html') # 登录页面 @app.route('/login', methods=['GET', 'POST']) def login(): if request.method == 'POST': # 获取表单数据 username = request.form['username'] password = request.form['password'] # 查询用户数据是否存在 cursor = db.cursor() cursor.execute("SELECT * FROM users WHERE username=%s AND password=%s", (username, password)) user = cursor.fetchone() if user: # 跳转到欢迎页面 return render_template('welcome.html', username=username) else: # 显示错误信息 return render_template('login.html', error='用户名或密码错误') # 显示登录页面 return render_template('login.html') if __name__ == '__main__': app.run(debug=True) ``` 在上面的代码,我们定义了两个路由:`/register` 和 `/login`。`/register` 路由用于显示注册页面和处理注册表单,`/login` 路由用于显示登录页面和处理登录表单。在处理表单时,我们先连接到 MySQL 数据库,然后执行插入或查询操作,最后根据结果跳转到相应的页面或显示错误信息。 接下来,在同一目录下创建一个名为 `templates` 的文件夹,并在其创建三个 HTML 文件:`register.html`、`login.html` 和 `welcome.html`,分别用于显示注册页面、登录页面和欢迎页面。 `register.html` 文件内容如下: ```html <!DOCTYPE html> <html> <head> <title>注册</title> </head> <body> <h1>注册</h1> <form method="post" action="/register"> <label>用户名:</label> <input type="text" name="username" required><br> <label>密码:</label> <input type="password" name="password" required><br> <input type="submit" value="注册"> </form> </body> </html> ``` `login.html` 文件内容如下: ```html <!DOCTYPE html> <html> <head> <title>登录</title> </head> <body> <h1>登录</h1> {% if error %} <p style="color: red">{{ error }}</p> {% endif %} <form method="post" action="/login"> <label>用户名:</label> <input type="text" name="username" required><br> <label>密码:</label> <input type="password" name="password" required><br> <input type="submit" value="登录"> </form> </body> </html> ``` `welcome.html` 文件内容如下: ```html <!DOCTYPE html> <html> <head> <title>欢迎</title> </head> <body> <h1>欢迎 {{ username }}!</h1> <a href="/login">退出</a> </body> </html> ``` 最后,在 MySQL 数据库创建一个名为 `users` 的表,用于存储用户数据: ```sql CREATE TABLE users ( id INT(11) NOT NULL AUTO_INCREMENT, username VARCHAR(50) NOT NULL, password VARCHAR(50) NOT NULL, PRIMARY KEY (id) ); ``` 现在,运行 `app.py` 文件,访问 `http://localhost:5000/register` 可以看到注册页面,填用户名和密码后点击注册按钮即可完成注册。注册成功后会自动跳转到登录页面,输入刚才注册的用户名和密码后点击登录按钮即可进入欢迎页面。在欢迎页面可以看到登录的用户名,并且可以点击退出链接返回登录页面。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值