PyQt5 MySql Bağlantısı

from PyQt5.QtWidgets import (QMessageBox,QApplication, QWidget, QToolTip, QPushButton,
                             QDesktopWidget, QMainWindow, QAction, qApp, QToolBar, QVBoxLayout,
                             QComboBox,QLabel,QLineEdit,QGridLayout,QMenuBar,QMenu,QStatusBar,
                             QTextEdit,QDialog,QFrame,QProgressBar
                             )
from PyQt5 import QtCore, QtWidgets, QtGui
from PyQt5.QtGui import QIcon,QFont,QPixmap,QPalette
from PyQt5.QtCore import QCoreApplication, Qt,QBasicTimer, QPoint
import mysql.connector
import sys


class LoginForm(QWidget):
    def __init__(self):
        super().__init__()

        self.mwidget = QWidget(self)
        self.setWindowFlags(QtCore.Qt.FramelessWindowHint)


        #size
        self.setFixedSize(600,400)
        self.center()
        self.setStyleSheet("background-color:rgb(35,35,35);")

        #label1
        self.label1 = QLabel("Code" , self)
        self.label1.setFont(QFont('Firestarter' , 30))
        self.label1.setGeometry(200,0,150,150)
        self.label1.setAlignment(Qt.AlignTop)
        self.label1.setStyleSheet("color:red")

        #duelLabel
        self.duelLabel = QLabel("Duel" , self)
        self.duelLabel.setFont(QFont('Firestarter' , 30))
        self.duelLabel.setGeometry(300,0,150,150)
        self.duelLabel.setAlignment(Qt.AlignTop)
        self.duelLabel.setStyleSheet("color:orange")

        #closebox
        self.closebox = QPushButton("X" , self)
        self.closebox.setFlat(True)
        self.closebox.setGeometry(550,0,50,30)
        self.closebox.clicked.connect(self.closeboxEvent)
        self.closebox.setStyleSheet("background-color:red;color:white;")

        #minimizebox
        self.minimizebox = QPushButton("_" , self)
        self.minimizebox.setGeometry(500,0,50,30)
        self.minimizebox.setFlat(True)
        self.minimizebox.clicked.connect(self.minimizeboxEvent)
        self.minimizebox.setStyleSheet("background-color:gray;color:white;")


        # usernametextbox
        self.ustextbox = QLineEdit(self)
        self.ustextbox.move(250,95)
        self.ustextbox.resize(300,30)
        self.ustextbox.setStyleSheet("border: 3px solid dimgray;border-style:outset;border-width:2px;border-radius:10px;color:silver")

        #usernamelabel
        self.label2 = QLabel("Email" , self)
        self.label2.setFont(QFont('Arial' , 18))
        self.label2.setGeometry(140,60,100,100)
        self.label2.setStyleSheet("color:#BFBFBF;")

        #passtextbox
        self.passtextbox = QLineEdit(self)
        self.passtextbox.move(250,195)
        self.passtextbox.resize(300,30)
        self.passtextbox.setStyleSheet("border: 3px solid dimgray;border-style:outset;border-width:2px;border-radius:10px;color:silver")

        #passlabel
        self.label3 = QLabel("Password",self)
        self.label3.setFont(QFont('Arial' , 18))
        self.label3.setGeometry(100,150,120,120)
        self.label3.setStyleSheet("color:#BFBFBF;")

        #letsgobutton
        self.letsgobutton = QPushButton("Lets Go" , self)
        self.letsgobutton.setGeometry(250,250,100,30)
        self.letsgobutton.setStyleSheet("background-color:#757D75;border-style:outset;border-width:2px;border-radius:15px;padding:6px;border-color:#264348;")
        self.letsgobutton.clicked.connect(self.letsgoDB)
        #label4
        self.label4 = QLabel("are you still not registered?" , self)
        self.label4.setFont(QFont('Arial' , 10))
        self.label4.setGeometry(150,300,160,20)
        self.label4.setStyleSheet("color:#BFBFBF;")

        #registerlinklabel
        self.regButton = QPushButton("Register",self)
        self.regButton.setGeometry(320,300,50,20)
        self.regButton.clicked.connect(self.registerLabelClicked)
        self.regButton.setFont(QFont('Arial' , 8))
        self.regButton.setStyleSheet("background-color:gray;color:silver")

        self.oldPos = self.pos()

        self.show()

    #center
    def center(self):
        qr = self.frameGeometry()
        cp = QDesktopWidget().availableGeometry().center()
        qr.moveCenter(cp)
        self.move(qr.topLeft())

    def mousePressEvent(self, event):
        self.oldPos = event.globalPos()

    def mouseMoveEvent(self, event):
        delta = QPoint (event.globalPos() - self.oldPos)
        #print(delta)
        self.move(self.x() + delta.x(), self.y() + delta.y())
        self.oldPos = event.globalPos()

    #closebutton
    def closeboxEvent(self):
    	app.exit(app.exec())

    #minimizebutton
    def minimizeboxEvent(self):
    	self.showMinimized()

    #registerlabel
    def registerLabelClicked(self):
        pass
        
    #letsgobuttondb
    def letsgoDB(self):
        try:
            Email = self.ustextbox.text()
            password = self.passtextbox.text()
            db = mysql.connector.connect(host = '-----',
                port = ----,
                user = 'root',
                database = 'userdatabase',
                password = '----')
            cur = db.cursor()
            query = "select * from useraccounts where email = @s and password = @s"
            data = cur.execute(query , (Email,password,))
            if len(cur.fetchall()>0):
                print("good")
            else:
                print("bad")
            print("connect succesfull")
        except:
            print("We Have Problem")



app = QApplication(sys.argv)


ex = LoginForm()
sys.exit(app.exec_())

database normalde bağlanıyor ama cursoru falan ekleyince we have problem çıktısını alıyorum bunun sebebi nedir

sorunumuza yardımcı olabilecek var mı?

“We Have Problem” yazmak icin yutulan exception’dir.

1 Beğeni

@Venoox bence de asıl sorunu görmek için try except bloklarını çıkarmalıısn yoksa sounun ne olduğunu kimse bakarak anlayamaz