Телеграмм бот + 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)

Буду очень благодарен готовому коду. Т.к сидел и так весь день над этим находил много разных вещей и идей, но так и не получилось. Спасибо)


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