Как реализовать проверку, есть ли ТГ ID в базе данных, и если есть, то выводить пользователю что он уже зарегистрирован?
Не понимаю что написать в if, чтобы работал код так как нужно.
Код:
@dp.message(Command('start'))
async def cmd_start(msg: types.Message, state: FSMContext) -> None:
user_username_without_dog = msg.from_user.username
user_username = "@" + user_username_without_dog
user_id = msg.from_user.id
user_firstName = msg.from_user.first_name
user_lastName = msg.from_user.last_name
await msg.answer("Приветствую! Для продолжения пользования ботом, пройдите верификацию!", reply_markup=kbPhone())
query = f"""SELECT * FROM testBotParsInTelegram WHERE tgID={user_id}"""
try:
with connect(
host="localhost",
user="root",
password="",
database="testBotParsTelegram",
) as connection:
connection.cursor().execute(query)
connection.commit()
except Error as e:
print(e)
if():
await msg.reply("Вы не подтвердили свой номер телефона! Зарегистрируйтесь для продолжения пользования ботом.")
else:
await msg.reply("Вы уже зарегистрированы!")
async def main():
await dp.start_polling(bot)
if __name__ == "__main__":
asyncio.run(main())
Ответы (1 шт):
Автор решения: Baggrisha
→ Ссылка
Попробуй вот это вот
async def cmd_start(msg: Message, state: FSMContext) -> None:
user_username_without_dog = msg.from_user.username
user_username = "@" + user_username_without_dog
user_id = msg.from_user.id
user_firstName = msg.from_user.first_name
user_lastName = msg.from_user.last_name
await msg.answer("Приветствую! Для продолжения пользования ботом, пройдите верификацию!")
query = f"""SELECT * FROM testBotParsInTelegram WHERE tgID={user_id}"""
registration = 0
try:
with connect(
host="localhost",
user="root",
password="",
database="testBotParsTelegram",
) as connection:
try:
connection.cursor().execute(query)
connection.commit()
registration = connection.cursor.fetchone()[0]
except:
registration = None
except:
pass
finally:
if registration == None:
await msg.reply("Вы не подтвердили свой номер телефона! Зарегистрируйтесь для продолжения пользования ботом.")
else:
await msg.reply("Вы уже зарегистрированы!")