Телеграмм бот с MySQL проблема с проверко

Возникла проблема с телеграмм ботом на питоне с бд MySQL. Я хочу реализовать функцию входа в аккаунт.


@bot.message_handler(func=lambda message: message.text == "Мой аккаунт")

def akkaunt(message):

    keybord = telebot.types.ReplyKeyboardMarkup(row_width=2, resize_keyboard=True, one_time_keyboard=False)
    button1 = telebot.types.KeyboardButton("Назад") 

    keybord.add(button1)
    bot.send_message(message.chat.id, 'Пришлите мне ваш никнейм', reply_markup=keybord)
    bot.register_next_step_handler(message, otvet_next)


def otvet_next(message):

    try:
        connection = pymysql.connect(
            host='',
            port=3306,
            user='',
            password='',
            database='gs74925',
            cursorclass=pymysql.cursors.DictCursor


        )
        bot.send_message(message.chat.id,  'Соединение успешно установлено')
        try:
            with connection.cursor() as cursor:
                text = message.text
                sqlite_select_query1 = """SELECT name FROM accounts WHERE name=%s"""
                cursor.execute(sqlite_select_query1, text)
                rows = cursor.fetchall()
                if text == rows:
                    bot.send_message(message.chat.id, 'Пришлите мне ваш пароль')
                    bot.register_next_step_handler(message, next_login)
                else:
                    bot.send_message(message.chat.id, 'Неправильный ник')
                    restart(message)
        finally:
            connection.close()
    except Exception as ex:
        bot.send_message(message.chat.id,  'Возникла проблема с соединением либо такого игрока нет, попробуйте позже...')
        print(ex)
        new_restart(message)

def next_login(message):

    try:
        connection = pymysql.connect(
            host='',
            port=3306,
            user='',
            password='',
            database='gs74925',
            cursorclass=pymysql.cursors.DictCursor
        )
        bot.send_message(message.chat.id,  'Соединение успешно установлено')
        try:
            with connection.cursor() as cursor:
                text = message.text
                sqlite_select_query1 = """SELECT name, password, email FROM accounts WHERE password=%s"""
                cursor.execute(sqlite_select_query1, text)

                if text == sqlite_select_query1:
                    bot.send_message(message.chat.id, 'Вы успешно вошли!')
                    rows = cursor.fetchall()
                    for row in rows:
                        message_text1 = f"Name - {row['name']}\nPassword - {row['password']}\nEmail - {row['email']}\n"
                        bot.send_message(message.chat.id, message_text1)
                else:
                    bot.send_message(message.chat.id, 'Неправильный пароль')
                    restart(message)
        finally:
            connection.close()

    except Exception as ex:
        bot.send_message(message.chat.id,  'Возникла проблема с соединением либо такого игрока нет, попробуйте позже...')
        print(ex)
        new_restart(message)

И мне нужна проверка при вводе никнейма. Если есть такой в бд то тогда проход в след проверку пароля, а если нет такого пользователя то тогда в начальное меню перекидывает. Также с паролем если пароль подходит то выводится краткая информация, если пароль не верный то опять же в начальое меню.Вроде я все логично написал, но бот не правильно функционирует, при вводе никнейма который 100% есть в бд, он пишет что такого нет, ну т.е войти в аккаунт невозможно.


Ответы (0 шт):