Почему при импорте из Tkinter в Python 3 мои значения не отображаются в моей базе данных Sqlite - PullRequest
0 голосов
/ 26 февраля 2020

Это не дает никаких ошибок, просто не появляется. Если это кажется немного изменчивым, извините, что расстроился, но буквально все работает, никаких ошибок вообще, это даже входит в идентификатор туриста, но нет имени, кто-то, пожалуйста, помогите, спасибо, и не прерывайте это пожалуйста, получайте много ударов, хотя большинство людей на самом деле не читают код [ИСПРАВЛЕНО]

import tkinter
from tkinter import *
import random
from random import randint
import sqlite3
from sqlite3 import *
#creating screen
page = tkinter.Tk()
#naming screen
page.title('Camp Sign-up')
#setting screen size
page.geometry("1000x500")
#creating text
Title = tkinter.Label(page, text='Registration', font=('arial') ).pack()

FullName = tkinter.Label(page, text='Full Name:', font=('arial')).place(x=110, y=50)
full = StringVar()
FullNameValue = Entry(page, textvar=full, width=25,).place(x=200, y=53)



CamperID = random.randint(100000, 1000000)

#Database



conn = sqlite3.connect('YouthCamp.db')
c = conn.cursor()
def createtable():
    c.execute("""CREATE TABLE Registration (
        CampID INT,
        full TEXT,
        )""")

try:
    createtable()
except:
    sqlite3.OperationalError

#button
def buttonclick():
    #heres where you lnk where you want your info to go
    FullNameValu= full.get()

    conn = sqlite3.connect('YouthCamp.db')
    c = conn.cursor()
    c.execute("INSERT INTO Registration(CampID, full)VALUES(?, ?)",(CamperID, FullNameValu))
    conn.commit()


#button
work = Button(page, text='Submit', width=10, height=2, bg='lightgrey', 
command=buttonclick()).place(x=475, y=450)

#heres where you execute your close files commands
conn.commit()
c.close()
conn.close()
#ending code never put this above anything
page.mainloop()

1 Ответ

1 голос
/ 26 февраля 2020

Ваш buttonclick() запустится, как только вы запустите программу, причина проделала этот путь command=buttonclick(), который должен быть command=buttonclick. Кроме того, создание вашей базы данных не очень хорошо изменило это и реорганизовало весь ваш код.

import tkinter
from tkinter import *
import random
from random import randint
import sqlite3
from sqlite3 import *





# THIS IS CREATING DATABASE
conn = sqlite3.connect('YouthCamp.db')
c = conn.cursor()
c.execute("""CREATE TABLE IF NOT EXISTS Registration (CampID INT, full TEXT)""")
conn.commit()
conn.close()


#button
def buttonclick():
    #heres where you lnk where you want your info to go
    FullNameValu= full.get()
    # generating the camp id
    CamperID = random.randint(100000, 1000000)

    conn = sqlite3.connect('YouthCamp.db')
    c = conn.cursor()
    c.execute("INSERT INTO Registration(CampID, full)VALUES(?, ?)",(CamperID, FullNameValu))
    conn.commit()
    conn.close()

    print("records inserted")




#creating screen
page = tkinter.Tk()
#naming screen
page.title('Camp Sign-up')
#setting screen size
page.geometry("1000x500")
#creating text
Title = tkinter.Label(page, text='Registration', font=('arial') )
Title.pack()

FullName = tkinter.Label(page, text='Full Name:', font=('arial'))
FullName.place(x=110, y=50)

full = StringVar()
FullNameValue = Entry(page, textvar=full, width=25,)
FullNameValue.place(x=200, y=53)

#button
work = Button(page, text='Submit', width=10, height=2, bg='lightgrey',
command=buttonclick).place(x=475, y=450)



page.mainloop()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...