python html提交表单数据库,html - 如何使用Python将输入表单HTML从发送到SQLite3数据库? - SO中文参考 - www.soinside.com...

我正在尝试为到达办公室的客人创建客人登记表。我无法将输入从表单发送到SQLite3数据库。

如果有人可以帮助我,那会很棒。

提前谢谢您

HTML:{% block body %}

Gasten registratie

Vul dit formulier in om te registreren


Voornaam

Achternaam

Bedrijfsnaam

Datum


In het kader van onze ISAE certificering registreren wij uw gegevens.

Wij verwerken uw gegevens volgends de regels van het AVG.

Registreren

{% endblock %}

还有我的python脚本:from flask import Flask, render_template, url_for, request, redirect

from datetime import datetime

import sqlite3

from sqlite3 import Error

app = Flask(__name__)

# Here I create a DB and a connection

def create_connection(db_file):

connection = None;

try:

conn = sqlite3.connect(db_file)

print(sqlite3.version)

except Error as e:

print(e)

return conn

# This is were I call the function for my db

create_connection("gast.db")

# This is were I create the tables I want in the database

def create_table(conn, guests):

sql = """ INSERT INTO guests(voor_naam,achter_naam,bedrijfs_naam,datum)

VALUES(?,?,?,?) """

c = conn.cursor()

c.execute(sql,guests)

return cur.lastrowid

# here I insert the created tables

def main():

database = r"gast.db"

sql_create_guests_table = """ CREATE TABLE IF NOT EXISTS guests (

id integer PRIMARY KEY,

voor_naam text NOT NULL,

achter_naam text NOT NULL,

bedrijfs_naam text NOT NULL,

datum date NOT NULL

); """

conn = create_connection(database)

if conn is not None:

# maak gast table

create_table(conn, sql_create_guests_table)

else:

print("Error! cannot create the database connection.")

# index for the html page

@app.route('/')

def index():

return render_template("index.html")

# sending input form form to db

@app.route('/my_form', methods=['POST'])

def my_form():

if request.method == 'POST':

c = conn.cursor()

guest_vnaam = request.form.get('Voornaam')

guest_anaam = request.form.get('Achternaam')

guest_cnaam = request.form.get('Bedrijfsnaam')

guest_datum = request.form.get('Datum')

try:

sql = ("INSERT INTO databasename.tablename (columnName,columnName,columnName,columnName Ci) VALUES (%s, %s, %s, %s)")

c.execute(sql,(guest_vnaam, guest_anaam, guest_cnaam, guest_datum))

connection.commit()

#or "conn.commit()" (one of the two)

return redirect('/')

except:

return 'Er ging iets fout met het opslaan van uw gegevens'

# This is where I run the app

if __name__ == '__main__':

app.run(debug=True)

该应用程序运行,但是当我单击注册按钮时,出现以下错误:

文件“ /home/ronny/Desktop/registratieinc/app.py”,第70行,在my_form中c = conn.cursor()NameError:未定义名称'conn'

再次欢迎您提供任何帮助或建议(;

再次感谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将HTML5表单数据传入本地SQLite数据库,您需要使用一些服务器端的编程语言(如Python、PHP等)来处理表单数据,并将其存储到SQLite数据库中。下面是一个使用PythonSQLite的示例代码: 首先,确保您已经安装了PythonSQLite的相关库。 ```python import sqlite3 from flask import Flask, request app = Flask(__name__) # 创建数据库连接 conn = sqlite3.connect('your_database.db') cursor = conn.cursor() # 创建表 cursor.execute('''CREATE TABLE IF NOT EXISTS form_data (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, email TEXT, message TEXT)''') conn.commit() # 处理表单数据的路由 @app.route('/submit_form', methods=['POST']) def submit_form(): # 获取表单数据 name = request.form.get('name') email = request.form.get('email') message = request.form.get('message') # 将数据插入数据库 cursor.execute("INSERT INTO form_data (name, email, message) VALUES (?, ?, ?)", (name, email, message)) conn.commit() return 'Form data submitted successfully!' if __name__ == '__main__': app.run() ``` 上述代码使用Flask框架创建了一个简单的Web应用,它可以接收来自HTML表单的POST请求,并将数据存储到SQLite数据库中。在表单提交时,通过`request.form.get`方法获取表单字段的值,然后使用SQL插入语句将数据插入到数据库中。 在命令行中运行上述代码后,您将获得一个本地服务器,它将监听`http://localhost:5000/submit_form`地址接收表单数据。您可以根据自己的需要修改路由和数据库表的结构。 请注意,这只是一个示例代码,您可能需要根据实际情况进行适当的修改和扩展。此外,您还需要编写HTML表单以向服务器发送数据
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值