меня зовут Виктор и мне 15 лет. Я новичок в программировании и нуждаюсь в помощи :) В настоящее время я работаю над базой данных, чтобы сохранить свои пароли и информацию о пользователях. Я нахожусь в точке, где база данных работает нормально. Я не знаю, как сделать так, чтобы мой верхний уровень в tkinter был доступен, а мое окно root - нет, и я не знаю, как проверить, является ли пароль, введенный в поле пароля, правильным паролем.
import sqlite3
root = Tk()
root.title("LOGBOOK")
root.iconbitmap("C:/Users/victo/Pictures/logo2.ico")
top = Toplevel()
top.iconbitmap("C:/Users/victo/Pictures/logo2.ico")
conn = sqlite3.connect("database.db")
c = conn.cursor()
# create function delete
def delete():
conn = sqlite3.connect("database.db")
c = conn.cursor()
c.execute("DELETE from logdata WHERE oid = " + delete_b.get())
conn.commit()
conn.close()
# create function submit
def submit():
conn = sqlite3.connect("database.db")
c = conn.cursor()
c.execute("INSERT INTO logdata VALUES (:username_email, :password, :game_website)",
{
'username_email': username_email.get(),
'password': password.get(),
'game_website': game_website.get()
})
conn.commit()
conn.close()
username_email.delete(0, END)
password.delete(0, END)
game_website.delete(0, END)
# create function query
def query():
conn = sqlite3.connect("database.db")
c = conn.cursor()
c.execute("SELECT *, oid FROM logdata")
records = c.fetchall()
print_records = ''
for record in records:
print_records += str(record[0]) + " " + str(record[1]) + " " + "\t" + str(record[3]) + "\n"
query_lab = Label(root, text=print_records)
query_lab.grid(row=8, column=0, columnspan=2)
conn.commit()
conn.close()
# creating a table
# c.execute("""CREATE TABLE logdata (
# username_email text,
# password text,
# game_website text
# )""")
# entry area
admpw = Entry(top, width=30)
admpw.grid(row=0, column=1, padx=30)
username_email = Entry(root, width=30)
username_email.grid(row=0, column=1, padx=30)
password = Entry(root, width=30)
password.grid(row=1, column=1, padx=30)
game_website = Entry(root, width=30)
game_website.grid(row=2, column=1, padx=30)
delete_b = Entry(root, width=30)
delete_b.grid(row=6, column=1)
# labels
uemail_label = Label(root, text="Username or E-mail")
uemail_label.grid(row=0, column=0)
password_label = Label(root, text="Password")
password_label.grid(row=1, column=0)
game_label = Label(root, text="Game or website")
game_label.grid(row=2, column=0)
delete_label = Label(root, text="OID number")
delete_label.grid(row=6, column=0)
# create buttons
submit = Button(root, text="Add to database", command=submit)
submit.grid(row=3, column=0, columnspan=2, pady=10, padx=10, ipadx=100)
query = Button(root, text="Show records", command=query)
query.grid(row=4, column=0, columnspan=2, pady=10, padx=10, ipadx=108)
delete = Button(root, text="delete a record", command=delete)
delete.grid(row=7, column=0, columnspan=2, pady=10, padx=10, ipadx=103)
login = Button(top, text="Open and access database!")
login.grid(row=1, column=0, columnspan=2)
admpw = Label(top, text="Admin Password: ")
admpw.grid(row=0, column=0)
pw = admpw.get()
if pw == 1234:
top.destroy()
conn.commit()
conn.close()
root.mainloop()
так выглядит код rn.
Я был бы очень рад, если бы кто-нибудь мог мне помочь.