表单提交是指用户通过网页上的表单(Form)输入数据,然后通过HTTP请求将这些数据发送到服务器进行处理的过程。服务器接收到这些数据后,通常会将其存储到数据库中,以便后续查询和使用。
以下是一个简单的HTML表单和对应的Python Flask后端处理代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Form Submission</title>
</head>
<body>
<form action="/submit" method="post">
<label for="name">Name:</label>
<input type="text" id="name" name="name"><br><br>
<label for="email">Email:</label>
<input type="email" id="email" name="email"><br><br>
<input type="submit" value="Submit">
</form>
</body>
</html>
from flask import Flask, request, render_template_string
import sqlite3
app = Flask(__name__)
@app.route('/')
def index():
return render_template_string('''
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Form Submission</title>
</head>
<body>
<form action="/submit" method="post">
<label for="name">Name:</label>
<input type="text" id="name" name="name"><br><br>
<label for="email">Email:</label>
<input type="email" id="email" name="email"><br><br>
<input type="submit" value="Submit">
</form>
</body>
</html>
''')
@app.route('/submit', methods=['POST'])
def submit():
name = request.form['name']
email = request.form['email']
conn = sqlite3.connect('database.db')
cursor = conn.cursor()
cursor.execute('INSERT INTO users (name, email) VALUES (?, ?)', (name, email))
conn.commit()
conn.close()
return 'Form submitted successfully!'
if __name__ == '__main__':
app.run(debug=True)
CREATE TABLE users (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
email TEXT NOT NULL UNIQUE
);
通过以上内容,您可以了解表单提交数据库的基本概念、优势、类型、应用场景以及常见问题的解决方法。
领取专属 10元无门槛券
手把手带您无忧上云