Спасибо, заработало.
Теперь другая проблема.
UnicodeEncodeError: ‘ascii’ codec can't encode characters in position 0-1: ordinal not in range(128)
class LoginWindow(QtGui.QDialog):
def __init__(self):
super(LoginWindow, self).__init__()
self.setWindowTitle(u'Вход')
self.setWindowIcon(QtGui.QIcon('123.ico'))
self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint |
QtCore.Qt.WindowSystemMenuHint |
QtCore.Qt.MSWindowsFixedSizeDialogHint)
#Поля ввода
self.LineEditNameL = QtGui.QLineEdit(self)
self.LineEditNameL.setFocus() #Фокус на self.LineEditNameL
self.LineEditPassL = QtGui.QLineEdit(self)
self.LineEditPassL.setEchoMode(2) # Отображение пароля звездочками
#Кнопки
self.ButLoginL = QtGui.QPushButton(u'Войти', self)
self.ButCancelL = QtGui.QPushButton(u'Отмена', self)
#Форма
self.HboxL = QtGui.QHBoxLayout()
self.HboxL.addWidget(self.ButLoginL)
self.HboxL.addWidget(self.ButCancelL)
#Форма
self.FormL = QtGui.QFormLayout()
self.FormL.addRow(u"Логин:", self.LineEditNameL)
self.FormL.addRow(u"Пароль:", self.LineEditPassL)
self.FormL.addRow(self.HboxL)
self.setLayout(self.FormL)
#Сигналы
self.ButLoginL.clicked.connect(self.on_Login)
self.ButCancelL.clicked.connect(self.close)
def on_Login(self):
global connection
global cursor
BDUSER = str(self.LineEditNameL. text())
BDPASSWORD = str(self.LineEditPassL. text())
try:
connection = MySQLdb.connect(host="127.0.0.1",user=BDUSER,passwd=BDPASSWORD, db = "db", charset='utf8')
cursor = connection.cursor()
except MySQLdb.DatabaseError, x:
x = str(x)
reply = QtGui.QMessageBox.critical(self, u'Ошибка!!',x)
else:
self.hide()
self.window = MainWindow()
self.window.show()
Пробовал
BDUSER = str(self.LineEditNameL. text().encode('utf-8')))
'QString' object has no attribute ‘encode’
Пробовал
BDUSER = unicode(self.LineEditNameL. text())
UnicodeEncodeError: ‘ascii’ codec can't encode characters in position 0-1: ordinal not in range(128)
Все работает но с этим проблема. А в четверг диплом(((