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'

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

再次感谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值