Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
取回;“一些”;使用Flask(Python)从MySQL数据库获取数据_Python_Mysql_Flask_Flask Mysql - Fatal编程技术网

取回;“一些”;使用Flask(Python)从MySQL数据库获取数据

取回;“一些”;使用Flask(Python)从MySQL数据库获取数据,python,mysql,flask,flask-mysql,Python,Mysql,Flask,Flask Mysql,我刚刚开始用Flask做一个“学生数据库项目”。我已经使用flask_mysqldb模块建立了一个MySQL数据库。我还向其中插入了一些学生数据。但我想获取特定学生的数据(姓名、年级、电话号码、地址、电子邮件等)。我该怎么做?请帮帮我,因为我对Flask和MySQL还不熟悉。这是我的密码: from flask import Flask,render_template, redirect, url_for, request, jsonify from flask_mysqldb import M

我刚刚开始用Flask做一个“学生数据库项目”。我已经使用flask_mysqldb模块建立了一个MySQL数据库。我还向其中插入了一些学生数据。但我想获取特定学生的数据(姓名、年级、电话号码、地址、电子邮件等)。我该怎么做?请帮帮我,因为我对Flask和MySQL还不熟悉。这是我的密码:

from flask import Flask,render_template, redirect, url_for, request, jsonify
from flask_mysqldb import MySQL

app = Flask(__name__)
app.config['SECRET_KEY'] = 'ILUVTOFART'
app.config['MYSQL_HOST'] = 'localhost'
app.config['MYSQL_USER'] = 'root'
app.config['MYSQL_PASSWORD'] = ''
app.config['MYSQL_DB'] = 'student_db'


mysql = MySQL(app)

@app.route("/add_s_data", methods=["GET","POST"]) #This is the page for adding student information to DB
def handle_s_data():

    if request.method == "POST":

        cur = mysql.connection.cursor()
        sid = request.form.get('id', False) # Student ID

        name = request.form.get('name', False) # Full Name
        f_name = request.form.get('fname', False) # Father's Name
        m_name = request.form.get('mname', False) # Mother's Name
        clas = request.form.get('class', False) # His grade/class
        roll = request.form.get('roll', False) # His roll number
        section = request.form.get('section', False) # His class section
        dob = request.form.get('dob', False) # Date of Birth
        join = request.form.get('join', False) # Admission date
        phone = request.form.get('phone', False) # Phone number
        address = request.form.get('address', False) # Address
        sequence = (sid, name, f_name, m_name, clas, roll, section, dob, join, phone, address)
        formula = "INSERT INTO student_data (id, name, f_name, m_name, class, roll, section, dob, joindate, phone, address) VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s )"
        cur.execute(formula,sequence)
        mysql.connection.commit()
        return str(sequence) + " Done!"
    return render_template('add_s_data.html')

#I want to fetch these data from the database and show them on the page. I know how to use Jinja2 Variables, but how do I fetch the data?
@导入url('https://fonts.googleapis.com/css?family=Josefin+Sans&display=swap');
@导入url('https://fonts.googleapis.com/css?family=Noto+Sans+TC&display=swap');
@导入url('https://fonts.googleapis.com/css?family=Lato&display=swap');
@导入url('https://fonts.googleapis.com/css?family=Raleway&display=swap');
*{
保证金:0;
填充:0;
框大小:边框框;
列表样式:无;
文字装饰:无;
字体系列:“Josefin Sans”,无衬线;
}
身体{
背景色:#f3f5f9;
}
.包装纸{
显示器:flex;
位置:相对位置;
}
.wrapper.sidebar{
宽度:240px;
身高:100%;
背景:#0080ff;
填充:30px 0px;
位置:固定;
}
.wrapper.sidebar h2{
左边距:15px;
填充顶部:05px;
垫底:05px;
颜色:白色;
字体系列:“Noto Sans TC”,无衬线;
-webkit文本笔划:0.5px黑色;
}
.wrapper.sidebar ul li{
填充:15px;
边框底部:1px实心#bdb8d7;
边框底部:1px实心rgba(0,0,0,0.05);
边框顶部:1px实心rgba(255255,0.05);
}    
.wrapper.sidebar ul li a{
颜色:白色;
显示:块;
}
.wrapper.sidebar ul li a.fas{
宽度:25px;
}
.wrapper.侧栏ul li:悬停{
背景色:#0f52ba;
}
.wrapper.侧边栏ul li:悬停a{
颜色:#fff;
}
.包装器.侧栏.社交媒体{
位置:绝对位置;
底部:0;
左:50%;
转化:translateX(-50%);
显示器:flex;
}
.包装器.侧栏.社交媒体a{
显示:块;
宽度:40px;
背景:#594f8d;
高度:40px;
线高:45px;
文本对齐:居中;
利润率:0.5px;
颜色:#bdb8d7;
边框左上半径:5px;
边框右上角半径:5px;
}
.家{
背景:#0080ff;
}
.添加{
背景:#0f52ba;
}
.wrapper.main_内容{
宽度:100%;
左边距:200px;
}
.wrapper.main_content.header{
填充:20px;
背景:#fff;
颜色:#717171;
边框底部:1px实心#e0e4e8;
}
.wrapper.main_content.info{
利润率:20px;
颜色:#717171;
线高:25px;
}
.wrapper.main_content.info div{
边缘底部:20px;
}
@介质(最大高度:500px){
.社交媒体{
显示:无!重要;
}
}
.id{
字体大小:30px;
利润率最高:5%;
左缘:20%;
}
.id输入{
左缘:16.5%;
宽度:30%;
身高:5;
字体大小:30px;
}
.姓名{
字体大小:30px;
利润率最高:3%;
左缘:20%;
}
.姓名输入{
宽度:30%;
身高:5;
字体大小:30px;
左缘:11.5%;
}
.fname{
字体大小:30px;
利润率最高:3%;
左缘:20%;
}
.fname输入{
宽度:30%;
身高:5;
左缘:1%;
字体大小:30px;
}
mname先生{
字体大小:30px;
利润率最高:3%;
左缘:20%;
}
.mname输入{
宽度:30%;
身高:5;
字体大小:30px;
}
.类{
字体大小:30px;
利润率最高:3%;
左缘:20%;
}
.课堂输入{
宽度:30%;
身高:5;
字体大小:30px;
左缘:12.5%;
}
.滚{
字体大小:30px;
利润率最高:3%;
左缘:20%;
}
.滚动输入{
宽度:30%;
身高:5;
字体大小:30px;
左边缘:14%;
}
.科{
字体大小:30px;
利润率最高:3%;
左缘:20%;
}
.章节输入{
宽度:30%;
身高:5;
字体大小:30px;
左缘:9.5%;
}
多布先生{
位置:绝对位置;
左缘:65%;
最高:18.5%;
字体大小:30px;
}
.dob输入{
宽度:50%;
字体大小:30px;
身高:1;
}
.加入{
位置:绝对位置;
左缘:65%;
最高:29.5%;
字体大小:30px;
}
.加入输入{
左缘:2%;
宽度:50%;
字体大小:30px;
身高:1;
}
.电话{
位置:绝对位置;
左缘:65%;
最高:42.5%;
字体大小:30px;
}
.电话输入{
左边距:10%;
宽度:50%;
字体大小:30px;
身高:1;
}
.地址{
位置:绝对位置;
左缘:65%;
最高:54.5%;
字体大小:30px;
}
.地址输入{
左边缘:16%;
宽度:51%;
字体大小:30px;
身高:1;
}
钮扣{
字体大小:20px;
边框:1px纯黑;
背景:浅蓝色;
颜色:白色;
左缘:77%;
位置:绝对位置;
最高:70%;
宽度:100px;
高度:50px;
边界半径:8px;
}

我是阿纳夫
Ahnaf的SDMS
学生


姓名:
父亲姓名:
母亲姓名:
类别:
滚动:
第节:
出生日期:
加入日期:
电话号码:
地址:
提交
以下是您可能的操作方法


@app.route("/user/<int:id>")
def user(id):
    cur = mysql.connection.cursor() 
    cur.execute("""SELECT * FROM student_data WHERE id = %s""", (id,))
    user = cur.fetchone()
    return render_template('user.html', user = user)
我建议您去检查
Flask-SQLAlchemy
Flask-WTForms
它们将帮助您更好地管理数据库和表单

<!DOCTYPE html>
<html lang="eng">
<head>
    <meta charset="utf-8">
    <title>User : {{ user.name }}</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" type="text/css" href="{{url_for('static', filename = 'css/bootstrap.min.css')}}">
    <link rel="stylesheet" type="text/css" href="../static/css/add_s_data.css">
    <link rel="stylesheet" type="text/css" href="../static/fontawsome/css/all.css">

</head>
<body>

  <div class="user">
    <p>ID: {{ user.id }}</p>
    <p>ID: {{ user.name }}</p>
    <p>...</p>
  </div>


</body>
</html>