День добрый. Возникла нестандартная проблема. Бот переносит значения одного пользователя на другого. Т.е допустим:
Польз. А нажал на кнопку /start, но при этом еще ничего не сделал. Польз. B решил посмотреть пин-код своего заказа. Нажал на кнопку /start, нажал на кнопку проверки. И он его увидел, все хорошо. Однако, после того как пользователь A вернулся, и нажал кнопку проверки без повторного нажатия /start, он получает номер заказа пользователя В. ТОЛЬКО после повторного нажатия /start, пользователь A увидит свои данные.
Кстати, система проверки заказов использует MySQL. Т.е во время проверки, из базы данных запросом пин-код попадает в переменную, а оттуда уже показывается человеку сообщением.
Подскажите, как это возможно исправить, какие методы есть? Я буду на связи и могу предоставить все что будет необходимо
Используемый модуль: Aiogram 2.19
Дополнительно:
sql2 = "SELECT pin FROM tickets{frame} WHERE id=%s".format(frame=sslll[0])
await syscur.execute(sql2, teleid)
pin = await syscur.fetchone()
await conn.commit()
await query.message.edit_text(
fmt.text(
fmt.text(" Вы уже купили билет, покупка второго невозможна!\n"),
fmt.text("\nПс-с-c, если что напоминаем, что твой пин-код:", pin[0])
),
reply_markup= cancel
)
Переменная pin не является глобальной
P.S. Была глобальной переменная с ID телеграма. Спасибо
Dr. Bacon за упоминание глобальных переменных