У меня в боте люди могут кидать !Куб и если им не везет, то они получают мут, но я хочу чтобы это еще записывалось в БД. Я понял как сделать, чтобы записывало айди и тэг пользователей в БД, но не могу понять как сделать чтобы добавлялось +1 значение в ячейку. Надо как-то на мете loss и win в коде сделать +1 в таблицу, но я в программировании не смешарик.
#Переменные с привилегиями для мута и размута
perms1 = ChatPermissions()
perms2 = ChatPermissions(can_send_audios=True, can_add_web_page_previews=True, can_change_info=True, can_invite_users=True, can_manage_topics=True, can_pin_messages=True, can_send_documents=True, an_send_media_messages=True, can_send_messages=True, can_send_other_messages=True, can_send_photos=True, can_send_polls=True, can_send_video_notes=True, can_send_videos=True, can_send_voice_notes=True)
#ЛОГИН
logging.basicConfig(level=logging.INFO)
#Сам бот
bot = Bot(token = cfg.TOKEN2)
dp = Dispatcher(bot)
conn = sqlite3.connect('db/database.db', check_same_thread=False)
cursor = conn.cursor()
async def on_sturtup(_):
sqlite3.connect("new.db")
print("Подключён к БД")
print("Я тест базы данных")
#Создание таблицы
cursor.execute("CREATE TABLE IF NOT EXISTS winka(user_id, username, win, loss)")
conn.commit()
#Ввод данных в таблицы
def db_table_val(user_id: int, username: str, win: int, loss: int):
cursor.execute('INSERT INTO winka (user_id, username) VALUES (?, ?, ?, ?)', (user_id, username, win, loss))
conn.commit()
#Работа куба на число 1
kukb1 = ("!Куб 1", "!куб 1")
@dp.message_handler(Text (kukb1))
async def cub(message: types.Message):
kub = await bot.send_dice(message.chat.id)
kub = kub['dice']['value']
await sleep (4)
if 1 < kub:
loss= await message.reply(text=f"{message.from_user.first_name}\nТы не угадал!\nВыпало: {kub}\nТеперь у тебя мут на 10 минут")
await bot.restrict_chat_member(message.chat.id, message.from_user.id, perms1)
await sleep(600)
await bot.restrict_chat_member(message.chat.id, message.from_user.id, perms2)
elif 1 > kub:
loss = await message.reply(text=f"{message.from_user.first_name}\nТы не угадал!\nВыпало: {kub}\nТеперь у тебя мут на 10 минут")
await bot.restrict_chat_member(message.chat.id, message.from_user.id, perms1)
await sleep(600)
await bot.restrict_chat_member(message.chat.id, message.from_user.id, perms2)
else:
win = await message.reply(text=f"{message.from_user.first_name}\nТЫ ПОБЕДИЛ!\nВыпало: {kub}\nТеперь у тебя мут на 10 минут")
us_id = message.from_user.id
username = message.from_user.username
db_table_val(user_id=us_id, username=username, win=win, loss=loss)
return cub
if __name__ == '__main__':
executor.start_polling(dp, on_startup = on_sturtup, skip_updates=True)