Телеграм бот на Питоне не выдает данные из таблицы, помогите
Написал телеграм бот на питоне который должен выводить данные из sql таблицы.
Бот запускается и отправляет ответ на стартовую команду, но после не выдает ничего из таблицы. ни ошибок, ни предупреждении. Bспользую PyCharm Community и xampp.
import logging
import mysql.connector
from aiogram import Bot, Dispatcher, executor, types
API_TOKEN = 'token'
logging.basicConfig(level=logging.INFO)
bot = Bot(token=API_TOKEN)
dp = Dispatcher(bot)
mydb = mysql.connector.connect(
host="localhost",
user="root",
password="",
database="php"
)
mycursor = mydb.cursor()
@dp.message_handler(commands=['start'])
async def send_welcome(message: types.Message):
await message.answer("Привет!\nВведите имя:")
# работает до этой строчки
@dp.message_handler(content_types=['text'])
async def send_msg(message: types.Message):
mycursor.execute(
"SELECT surname, age, year, city, phone FROM list WHERE name ='{}'".format(message.from_user.id))
# fetching the rows from the cursor object
result = mycursor.fetchone()
for x in result:
await message.answer(x)
if __name__ == '__main__':
executor.start_polling(dp, skip_updates=True)
Ответы (1 шт):
Автор решения: oleksandrigo
→ Ссылка
Если вы хотите чтобы после команды start бот выводил данные с таблицы то сделайте так.
@dp.message_handler(commands=['start'])
async def send_welcome(message: types.Message):
mycursor.execute(
"SELECT surname, age, year, city, phone FROM list WHERE name ='{}'".format(message.from_user.id))
result = mycursor.fetchone()
for x in result:
await message.answer(x)