gpt4 book ai didi

python - 按下登录按钮后,如何获取Tkinter entry的值并传递给SQL查询?

转载 作者:行者123 更新时间:2023-11-29 02:23:12 31 4
gpt4 key购买 nike

在下面的代码中,分别为用户名和密码创建了两个 tkinter 条目 entry1 和 entry2。我正在寻找的是将在 tkinter 条目中输入的值存储到数据库表 admin_details 中。但什么也没有通过。我也不知道使用条件,即“检索 tkinter 条目中插入的值,并在按下登录按钮后将数据存储在表中。”代码如下:

import MySQLdb as mdb
from Tkinter import *
from tkMessageBox import *

root = Tk()

test=StringVar()
label1=Label(root,text='Username').grid()
entry1 = Entry(root, textvariable='uname')
entry1.grid()
label2=Label(root,text='password').grid()
entry2 = Entry(root, textvariable='pword')
entry2.grid()
print entry2

uname = entry1.get()
pword= entry2.get()
tup=[uname,pword]

option1 = Button(root, text = 'Login', command = next)
option1.grid()
if uname!='':
def next():
con = mdb.connect('localhost', 'root', 'root', 'kuis');
with con:
cur = con.cursor()
insert_sql = 'INSERT INTO admin_details(username, password) VALUES("{0}","{1}")'.format(*tup)
cur.execute(insert_sql)


root.mainloop()

最佳答案

明显的问题是您在两个条目初始化后直接从它们获取文本。当条目中的文本更改时,您为此使用的两个变量将不会更改。

下面是一些基本代码,如何从两个输入字段中检索值并将它们传递给函数:

import tkinter as Tk
import tkinter.messagebox


def show_pass_user(password, user):
# show what we got
tkinter.messagebox.showinfo("Data received", "Hey just got your username \"" + user + "\"" +
" and password \"" + password + "\"")
# run your sql here


def main():
root = Tk.Tk()

entry_user = Tk.Entry(root)
entry_user.insert(0, "Username")

entry_pass = Tk.Entry(root)
entry_pass.insert(0, "Password")

# use a lambda to get Username and Password when button is pressed
pressme = Tk.Button(root, text="Press Me", command=lambda:
show_pass_user(entry_pass.get(), entry_user.get()))

entry_user.grid()
entry_pass.grid()
pressme.grid()
root.mainloop()

if __name__ == "__main__":
main()

此代码仅与 Python3! 一起运行

关于python - 按下登录按钮后,如何获取Tkinter entry的值并传递给SQL查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27875238/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com