thinter+MySQL登录界面系统
时间: 2024-05-12 22:13:40 浏览: 5
好的,下面是一个简单的Thinter+MySQL登录界面系统的实现示例:
首先,需要创建一个MySQL数据库,用于存储用户信息,包括用户名和密码等。
在Thinter中,可以使用tkinter库来创建GUI界面,在此基础上使用pymysql库来连接MySQL数据库,并在界面中添加登录和注册功能。
示例代码如下:
```python
import tkinter as tk
import pymysql
# 连接数据库
conn = pymysql.connect(host='localhost', port=3306, user='root', password='password', database='test')
cursor = conn.cursor()
# 创建用户表
sql_create = '''
CREATE TABLE IF NOT EXISTS users (
id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
password VARCHAR(50) NOT NULL
)
'''
cursor.execute(sql_create)
# 登录验证函数
def login():
username = entry_username.get().strip()
password = entry_password.get().strip()
sql_query = 'SELECT * FROM users WHERE username="%s" AND password="%s"' % (username, password)
cursor.execute(sql_query)
result = cursor.fetchone()
if result:
label_status.config(text='登录成功')
else:
label_status.config(text='用户名或密码错误')
# 注册函数
def register():
username = entry_username.get().strip()
password = entry_password.get().strip()
sql_insert = 'INSERT INTO users (username, password) VALUES ("%s", "%s")' % (username, password)
try:
cursor.execute(sql_insert)
conn.commit()
label_status.config(text='注册成功')
except Exception as e:
conn.rollback()
label_status.config(text='注册失败:' + str(e))
# 创建GUI界面
root = tk.Tk()
root.title('登录系统')
label_username = tk.Label(root, text='用户名:')
label_username.grid(row=0, column=0, padx=10, pady=10)
entry_username = tk.Entry(root)
entry_username.grid(row=0, column=1, padx=10, pady=10)
label_password = tk.Label(root, text='密码:')
label_password.grid(row=1, column=0, padx=10, pady=10)
entry_password = tk.Entry(root, show='*')
entry_password.grid(row=1, column=1, padx=10, pady=10)
button_login = tk.Button(root, text='登录', command=login)
button_login.grid(row=2, column=0, padx=10, pady=10)
button_register = tk.Button(root, text='注册', command=register)
button_register.grid(row=2, column=1, padx=10, pady=10)
label_status = tk.Label(root, text='')
label_status.grid(row=3, columnspan=2, padx=10, pady=10)
root.mainloop()
# 关闭数据库连接
cursor.close()
conn.close()
```
在这个示例中,首先创建了一个名为“users”的用户表,用于存储用户信息。然后,在GUI界面中添加了两个文本框和两个按钮,一个用于登录,一个用于注册。登录和注册函数分别从文本框中获取用户名和密码,并在MySQL数据库中进行查询或插入操作,最后在标签中显示结果。
需要注意的是,这个示例只是一个简单的Thinter+MySQL登录界面系统的实现示例,实际开发中还需要考虑更多的安全和稳定性问题,例如密码加密、SQL注入、异常处理等。