SHARE
TWEET

Untitled

a guest Nov 19th, 2019 108 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import pypyodbc
  2. mySQLServer = "DESKTOP-3F2B3B3\SQLEXPRESS"
  3. myDataBase = "DfLessonDb"
  4. itstrue = ('да', 'Да', 'ДА', 'уверен', 'Уверен', 'Верны', 'верны', 'ага', 'Ага', 'Верно', 'верно')
  5. import telebot
  6. from telebot import types
  7. bot = telebot.TeleBot('909191584:AAFMYcMImK84IBchpY1NiGQ3bLeUlpYRUYg')
  8. name = ''
  9. surname = ''
  10. telegramid = 0
  11. id = 0
  12.  
  13.  
  14. @bot.message_handler(commands=['start'])
  15. def send_welcome(message):
  16.     user_id = str(message.from_user.id)
  17.     bot.send_message(message.from_user.id, '''Привет, я бот-журнал для списка команд введи /help\nВаш telegram id:''' + user_id)
  18.  
  19.  
  20. @bot.message_handler(commands=['help'])
  21. def send_welcome(message):
  22.     bot.send_message(message.from_user.id, "/reg - Начать регистрацию пользователя\n/infoaboutme - получить "
  23.                                            "информацию о себе\n/leavethecours - покинуть курс")
  24.  
  25.  
  26. @bot.message_handler(commands=['reg'])
  27. def start_register(message):
  28.     connection = pypyodbc.connect('Driver={SQL Server};'
  29.                                   'Server=' + mySQLServer + ';'
  30.                                                             'Database=' + myDataBase + ';')
  31.     cursor = connection.cursor()
  32.     telegramid = int(message.from_user.id)
  33.     mySQLQuery = "/select * from Students where telegramid={student[0]!r}".format(student=[telegramid])
  34.     cursor.execute(mySQLQuery[1:])
  35.     results = cursor.fetchall()
  36.     if not results:
  37.         bot.send_message(message.from_user.id, 'Введите свое имя')
  38.         bot.register_next_step_handler(message, get_name)
  39.     else:
  40.         bot.send_message(message.from_user.id, 'Вы уже зарегистрированны!')
  41.  
  42. @bot.message_handler(commands=['infoaboutme'])
  43. def start_register(message):
  44.     connection = pypyodbc.connect('Driver={SQL Server};'
  45.                                   'Server=' + mySQLServer + ';'
  46.                                                             'Database=' + myDataBase + ';')
  47.     print(message)
  48.     cursor = connection.cursor()
  49.     telegramid = int(message.from_user.id)
  50.     mySQLQuery = "/select * from Students where telegramid={student[0]!r}".format(student=[telegramid])
  51.     cursor.execute(mySQLQuery[1:])
  52.     results = str(cursor.fetchall())[2:-2].replace("'", '').replace(',', '', 1).replace(',', '\nНомер студенческого:',
  53.                                                                                         1).replace(',', '\nТелеграм id:')
  54.     if not results:
  55.         bot.send_message(message.from_user.id, 'Вы не зарегистрированны в системе!')
  56.     else:
  57.         bot.send_message(message.from_user.id, results)
  58.     connection.close()
  59.  
  60. @bot.message_handler(commands=['leavethecours'])
  61. def leave_cours(message):
  62.     bot.send_message(message.from_user.id, 'Вы уверенны что хотите покинуть курс и удалить все данные о себе?')
  63.     bot.register_next_step_handler(message, get_answer_leave)
  64. def get_answer_leave(message):
  65.     print(str(message.text))
  66.     if str(message.text) in itstrue:
  67.         bot.send_message(message.from_user.id, 'До скорых встреч!')
  68.         connection = pypyodbc.connect('Driver={SQL Server};'
  69.                                       'Server=' + mySQLServer + ';'
  70.                                                                 'Database=' + myDataBase + ';')
  71.         telegramid = int(message.from_user.id)
  72.         cursor = connection.cursor()
  73.         mySQLQuery = "/delete from Students where telegramid={student[0]!r}".format(student=[telegramid])
  74.         cursor.execute(mySQLQuery[1:])
  75.         connection.commit()
  76.         connection.close()
  77.     else:
  78.         bot.send_message(message.from_user.id, 'Не играй с огнем)')
  79.  
  80. def get_name(message):
  81.     global name
  82.     name = message.text
  83.     bot.send_message(message.from_user.id, 'Введите свою фамилию')
  84.     bot.register_next_step_handler(message, get_surname)
  85.  
  86.  
  87. def get_surname(message):
  88.     global surname
  89.     surname = message.text
  90.     bot.send_message(message.from_user.id, 'Введите номер своего студенческого билета')
  91.     bot.register_next_step_handler(message, get_id)
  92.  
  93.  
  94. def get_id(message):
  95.     global id
  96.     id = message.text
  97.     bot.send_message(message.from_user.id,
  98.                      'Данные верны?\nИмя: ' + name + '\n' + 'Фамилия: ' + surname + '\n' + 'Номер суденческого: ' + id)
  99.     bot.register_next_step_handler(message, get_answer_reg)
  100.  
  101.  
  102. def get_answer_reg(message):
  103.     if str(message.text) in itstrue:
  104.         bot.send_message(message.from_user.id, 'Успех!')
  105.         connection = pypyodbc.connect('Driver={SQL Server};'
  106.                                       'Server=' + mySQLServer + ';'
  107.                                                                 'Database=' + myDataBase + ';')
  108.         telegramid = int(message.from_user.id)
  109.         cursor = connection.cursor()
  110.         mySQLQuery = "/insert into Students (namestud, surnamestud, studid, telegramid) values ({student[0]!r}, {student[1]!r}, " \
  111.                      "{student[2]!r}, {student[3]!r})".format(student=[name, surname, id, telegramid])
  112.         cursor.execute(mySQLQuery[1:])
  113.         connection.commit()
  114.         connection.close()
  115.     else:
  116.         bot.send_message(message.from_user.id, 'Попробуйте снова')
  117. bot.polling()
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top