@Winchestor

Нужно взять из БД channel_id и post_text?

код:
@bot.channel_post_handler(content_types=['video', 'photo', 'audio', 'document'])
def post_change(message):
# try:
con = sql.connect('user.db')
cur = con.cursor()
t = cur.execute("SELECT post_text FROM user WHERE user_id = (?)", (message.from_user.id,))
ch = cur.execute("SELECT channel_id FROM user WHERE user_id = (?)", (message.from_user.id,))
post_text = t.fetchone()
channel = ch.fetchone()
con.commit()
con.close()

if message.caption:
bot.edit_message_caption(chat_id=channel, message_id=message.message_id,
caption=message.caption + '\n\n' + post_text)
else:
bot.edit_message_caption(chat_id=channel, message_id=message.message_id, caption='' + '\n\n' + post_text)
# except:
# bot.send_message(message.chat.id, '⚠️ Xatolik yuz berdi\nQayta urinib kuring!')
  • Вопрос задан
  • 34 просмотра
Пригласить эксперта
Ответы на вопрос 1
Vene4ka
@Vene4ka
Учусь программировать :>
Фуф, чёт вроде понял, но не всё.
1. Нету табуляции, в будущем используй тег code
2. Попробуй после подключения сделать коммит.

con = sql.connect('user.db')
cur = con.cursor()
con.commit()

И можно ещё попробовать такой запрос:
id = message.from_user.id
post_text = cur.execute("SELECT post_text FROM user WHERE user_id = ?", [id]).fetchone()
ch_id = cur.execute("SELECT channel_id FROM user WHERE user_id = ?", [id]).fetchone()

Если не помогло - то дайте хотя-бы лог ошибки, что-ли.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы