#python #pyqt5 #mysql-workbench #mysql-python
Вопрос:
проблема в том, что если написать какое-либо слово в строке имени пользователя или в строке пароля, он покажет мне правильный логин … я хочу работать только с данными, зарегистрированными в базе данных ..
я создаю базу данных в mysql : def page_login(self):
я создал поля проверки имени пользователя и пароля : def checkfiels(self):
( он хорошо работает без подключения к базе данных, если оставить имя пользователя или пароль или два пустых поля или заполнить ярлык пользователя и пароль . сделано!!
я хочу, чтобы теперь, если заполнена метка пользователя или пароль из базы данных, покажите мне ошибку msg от : def checkfiels(self):
есть код :
from cgitb import enable
from peewee import *
import self
from PyQt5.QtCore import QPropertyAnimation
from PySide2 import *
from PyQt5 import *
import Resources_rc
from PyQt5 import QtCore, QtGui, QtWidgets, uic
from PyQt5.QtWidgets import QPushButton, QLineEdit
import sys
import pymysql
pymysql.install_as_MySQLdb()
class MyWindow(QtWidgets.QMainWindow):
def __init__(self, maxWidth=None):
super(MyWindow, self).__init__()
self.mysql_db = MySQLDatabase('data', user='root', password='toor', host='127.0.0.1', port=3306)
uic.loadUi('MainWindow.ui', self)
self.handel_buttons()
self.db_connection()
self.add_users()
self.frame_error.hide()
self.btn_close_popup_7.clicked.connect(lambda: self.frame_error.hide())
self.btn_log_6.clicked.connect(self.checkfiels)
######################## CONNECT DATABASE ##################
def db_connection(self):
self.cur = self.mysql_db.cursor()
print('connected')
######################## FORM LOGIN ##################
def page_login(self):
username = self.lineEdit_10.text()
password = self.lineEdit_5.text()
self.cur.execute(''' SELECT username , password FROM users''')
data = self.cur.fetchall()
found = True
for row in data:
if row[0] == username and row[1] == password:
self.frame_left_menu.show()
print(row)
######################## CHECK FIELS FORM LOGIN #######
def checkfiels(self):
textUser = " "
textPassword = " "
def showMessage(message):
self.frame_error.show()
self.label_164.setText(message)
## CHECK USER ##
if not self.lineEdit_10.text():
textUser = " User Empty "
else:
textUser = ""
## CHECK PASSWORD ##
if not self.lineEdit_5.text():
textPassword = " Password Empty "
else:
textPassword = ""
if textUser textPassword != '':
text = textUser textPassword
showMessage(text)
else:
text = " Login OK. "
if self.checkBox_6.isChecked():
text = text " | Saver User OK. "
showMessage(text)
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec_())
Спасибо