flask连接数据库并在页面展示数据
python代码如下
from flask import Flask, render_template, request
import pymysql
app = Flask(__name__)
@app.route("/add/user", methods=["GET", "POST"])
def addUser():
if request.method == "GET":
return render_template("add.html")
conn = pymysql.connect(user="root", password="123456", host="192.168.91.100", charset="utf8", port=3306, db="test")
curses = conn.cursor()
name = request.form.get("name")
phone = request.form.get("phone")
rmk = request.form.get("rmk")
sql = 'insert into user(name, phone, remarks) values(%s, %s, %s)'
curses.execute(sql, [name, phone, rmk])
conn.commit()
conn.close()
return "add success"
@app.route("/show/user")
def showUser():
conn = pymysql.connect(user="root", password="123456", host="192.168.91.100", charset="utf8", port=3306, db="test")
#返回字典形式查询结果
curses = conn.cursor(cursor=pymysql.cursors.DictCursor)
sql = "select * from user"
#执行sql语句
curses.execute(sql)
#获取所有的查询结果
data = curses.fetchall()
return render_template("info.html", data=data)
if __name__ == '__main__':
app.run()
页面代码如下
add.html
<form action="/add/user" method="post">
<input type="text" placeholder="姓名" name="name">
<input type="text" placeholder="电话" name="phone">
<input type="text" placeholder="备注" name="rmk">
<input type="submit" value="提交">
</form>
info.html
<table border="1">
<thead>
<tr>
<th>name</th>
<th>phone</th>
<th>备注</th>
</tr>
</thead>
<tbody>
{% for item in data %}
<tr>
<td>{{ item.name }}</td>
<td>{{ item.phone }}</td>
<td>{{ item.remarks }}</td>
</tr>
{% endfor %}
</tbody>
</table>


浙公网安备 33010602011771号