Проблема с вводом и выводом данных Telegram Bot

Для дипломной защиты моя тема - это разработка телеграм бота "Организация праздников". Я сделал такие функции, как выбор площадки, праздника, реквизита и персонала, но мне осталось сделать так, чтобы любой выбор пользователя вносился в БД и отображался при нажатии кнопки "Бронирование".

import sqlite3
from telebot import types
from time import sleep

bot = telebot.TeleBot('')
name = None
start_message_id = None
start_chat_id = None
contact_info = {}
user_messages = {}

@bot.message_handler(func=lambda message: message.text == 'Заполнить данные ?')
def handle_fill_data(message):

    bot.send_message(message.chat.id, "Введите ваше имя и номер телефона (в формате: +XXXXXXXXXXX):")

    bot.register_next_step_handler(message, confirm_data)



def confirm_data(message):

    user_data = message.text

    confirmation_message = f"Ваши данные: {user_data}\n\nДанные верны?"

    markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
    confirm_btn = types.KeyboardButton("Данные верны ✅")
    edit_btn = types.KeyboardButton("Нет, хочу исправить ❌")
    markup.add(confirm_btn, edit_btn)

    bot.send_message(message.chat.id, confirmation_message, reply_markup=markup)


@bot.message_handler(func=lambda message: message.text in ["Данные верны ✅", "Нет, хочу исправить ❌"])
def handle_confirmation(message):
    if message.text == "Данные верны ✅":
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
        btn1 = types.KeyboardButton('Вернуться в главное меню')
        markup.add(btn1)
        bot.send_message(message.chat.id, "Спасибо, данные подтверждены! В ближайшее время мы свяжемся с вами.", reply_markup=markup)
    elif message.text == "Нет, хочу исправить ❌":
        bot.send_message(message.chat.id, "Введите ваше имя и номер телефона (в формате: +XXXXXXXXXXX):")
        bot.register_next_step_handler(message, confirm_data)

@bot.message_handler(commands=['start'])
def start(message):
    markup = types.ReplyKeyboardMarkup(resize_keyboard = True)
    btn1 = types.KeyboardButton('На открытом воздухе ?')
    btn2 = types.KeyboardButton('В арендованном помещении ?')
    btn3 = types.KeyboardButton('Выезд на дом ?')
    markup.add(btn1, btn2, btn3)
    bot.send_photo(message.chat.id, 'https://sun9-63.userapi.com/impg/5tZ63IVN5MIwTTcv8yyaX41VdvAZ9r8EzmOYEw/dEqH0tUIZOg.jpg?size=720x544&quality=96&sign=bad489983a2d719d7e48f73e6015c4a2&type=album', caption='Привет {0.first_name}! Я помогу организовать вам праздник.' .format(message.from_user), reply_markup=markup)

    conn = sqlite3.connect('bd.sql')
    cur = conn.cursor()

    cur.execute( 'CREATE TABLE IF NOT EXISTS users (id int auto_increment primary key, name varchar(50), pass varchar(50))')
    conn.commit()
    cur.close()
    conn.close()

    bot.send_message(message.chat.id, 'Сначала вам необходимо авторизоваться. Введите свой логин:')
    bot.register_next_step_handler(message, user_name)


def user_name(message):
    global name
    name = message.text.strip()
    bot.send_message(message.chat.id, 'Введите пароль:')
    bot.register_next_step_handler(message, user_pass)


def user_pass(message):
    password = message.text.strip()

    conn = sqlite3.connect('bd.sql')
    cur = conn.cursor()

    cur.execute(f"INSERT INTO users (name, pass) VALUES ('%s', '%s')" % (name, password))
    conn.commit()
    cur.close()
    conn.close()

    markup = telebot.types.InlineKeyboardMarkup()
    markup.add(telebot.types.InlineKeyboardButton('Список пользователей', callback_data='users'))
    bot.send_message(message.chat.id, 'Пользователь зарегистрирован!', reply_markup=markup)
    bot.send_message(message.chat.id, 'Давайте выберем место проведения мероприятия:')

@bot.callback_query_handler(func=lambda call: True)
def callback(call):
    conn = sqlite3.connect('bd.sql')
    cur = conn.cursor()

    cur.execute('SELECT * FROM users ORDER BY id DESC LIMIT 5')
    users = cur.fetchall()


    info = ''
    for el in users:
        info += f'Имя: {el[1]}, пароль: {el[2]}\n'

    cur.close()
    conn.close()

    bot.send_message(call.message.chat.id, info)

@bot.message_handler(content_types=['text'])
def bot_message(message):
    if message.chat.type == 'private':
        if message.text == 'На открытом воздухе ?':
            markup = types.ReplyKeyboardMarkup(resize_keyboard = True)
            btn1 = types.KeyboardButton('Праздники ?')
            btn2 = types.KeyboardButton('Реквизит ?')
            btn3 = types.KeyboardButton('Персонал ?')
            btn4 = types.KeyboardButton('Бронирование ✅')
            back1 = types.KeyboardButton('Выбрать другое место')
            markup.add(btn1, btn2, btn3, btn4, back1)
            bot.send_message(message.chat.id,'Организация праздника на открытом воздухе имеет множество преимуществ, которые делают такие мероприятия особенно привлекательными и запоминающимися.')
            sleep(2)
            bot.send_message(message.chat.id,'Природная красота и свежий воздух создают приятную и расслабляющую атмосферу для гостей. В окружении зелени, цветов и открытого неба участники могут наслаждаться природными красотами и полноценно отдыхать от повседневной суеты.')
            bot.send_photo(message.chat.id,'https://персонаж.рф/wp-content/uploads//2021/05/6844701e5116210b0a19b9e6798e8780-800x533.jpg')
            sleep(2)
            bot.send_message(message.chat.id,'Также стоит отметить, что проведение праздника на открытом воздухе способствует физической активности и здоровому образу жизни. Гости могут наслаждаться активными развлечениями, заниматься спортом и проводить время на свежем воздухе, что благоприятно сказывается на их физическом и психическом здоровье.')
            sleep(2)
            bot.send_message(message.chat.id,'Для организаторов таких мероприятий также существует ряд преимуществ. Открытая природа обычно предлагает большое пространство, что позволяет свободно разместить всех гостей и создать удобные условия для проведения праздника.')
            sleep(2)
            bot.send_message(message.chat.id,'Кроме того, праздники на открытом воздухе часто ассоциируются с экологической ответственностью и уважением к окружающей среде. Такие мероприятия могут проводиться с учетом принципов устойчивого развития и использования экологически чистых материалов.', reply_markup=markup)


bot.polling(none_stop=True, interval=0)```

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