- 首先导入Flask库和pymysql库。Flask用于创建Web应用程序,pymysql用于连接和操作MySQL数据库。
from flask import Flask, render_template, request
import pymysql
- 创建一个Flask应用实例。__name__参数告诉Flask使用当前模块作为应用的名称。
app = Flask(__name__)
- 定义了一个路由/add/user,并且支持GET和POST方法。GET方法用于显示表单,POST方法用于处理表单提交的数据。
@app.route("/add/user", methods=['GET', 'POST'])
def add_user():
if request.method == 'GET':
return render_template("add_user.html")
- 从提交的表单中获取用户输入的用户名、密码和手机号。
username = request.form.get('user')
password = request.form.get('pwd')
mobile = request.form.get('mobile')
- 连接到MySQL数据库。pymysql.connect方法使用指定的参数(主机、端口、用户名、密码、字符集和数据库名)来建立连接。cursor用于执行SQL查询
conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='1234567', charset='utf8', db='unicom')
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
- 定义并执行SQL插入语句,将表单提交的数据插入到admin表中。
sql = 'insert into admin(username,password,mobile) values(%s,%s,%s)'
cursor.execute(sql, [username, password, mobile])
- 提交事务,确保数据被永久保存到数据库中,关闭数据库连接。
conn.commit()
cursor.close()
conn.close()
8.返回响应
return '添加成功'
- 启动Flask开发服务器
if __name__ == '__main__':
app.run()
add_user.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>添加用户</h1>
<form method="post" action="/add/user">
<input type="text" name="user" placeholder="用户名">
<input type="text" name="pwd" placeholder="密码">
<input type="text" name="mobile" placeholder="手机号">
<input type="submit" value="提 交">
</form>
</body>
</html>
html页面显示:
点击提交后添加成功
在命令提示符中查询表中新添加数据