@h3ko

Как вывести сообщения пользователя в бд?

нужно чтобы текст, который писал пользователь заносился в бд, но не понимаю как, в бд выводится кнопка "/start". подскажите пожалуйста. Код снизу

@dp.message_handler(commands=['start'])
async def start(message: types.Message):
await bot.send_message(message.chat.id, 'ky br0', reply_markup=prod)
connect = sqlite3.connect('tg.db')
cursor = connect.cursor()
cursor.execute("INSERT INTO users (user_id, user_name) VALUES (?, ?)", [message.chat.id, message.chat.first_name])
cursor.close()
connect.commit()
connect.close()

@dp.callback_query_handler(text='1')
async def id1(callback: CallbackQuery):
await bot.send_message(callback.message.chat.id, 'Введите свои данные')
connect = sqlite3.connect('tg.db')
cursor = connect.cursor()
cursor.execute("INSERT INTO infa (user_inf) VALUES (?)", [callback.message.text])
cursor.close()
connect.commit()
connect.close()

if __name__ == '__main__':
executor.start_polling(dp)
  • Вопрос задан
  • 120 просмотров
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
@dp.callback_query_handler(text='1')
async def id1(callback: CallbackQuery):

Этот обработчик прикреплён к кнопкам в сообщении /start. Поэтому callback.message указывает именно на это сообщение.
А тебе нужно дождаться следующего сообщения. Читай про finite state machine.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы