Python - Продолжать обновлять данные, одновременно разрешая ввод данных пользователем - PullRequest
0 голосов
/ 05 августа 2020

Я использую модуль mysql.connector, я делаю небольшое консольное приложение для обмена сообщениями. Я могу обновлять данные до тех пор, пока не запрашиваю ввод данных пользователем. Однако мне нужен пользовательский ввод, чтобы люди могли отправлять сообщения, есть ли способ разрешить обновление данных и разрешить отправку сообщений

Код

while True:
    db = mysql.connector.connect(
    host="127.0.0.1",
    port="3306",
    user="root",
    database="pythondb"
    )

    cursor = db.cursor()

    for message in fetchMessages():
        if(message.sender == socket.gethostname()):
            print(f"You: {encryption.decode('goldenwonders', message.message)}")
        else:
            print(f"{message.sender}: {encryption.decode('goldenwonders', message.message)}")

    
    
    message = input("\nPlease Enter a Message: ")
    message = encryption.encode('goldenwonders', message)
    sender = socket.gethostname()
        
    sql = "INSERT INTO messages (message, sender) VALUES (%s, %s)"
    values = (message, sender)

    cursor.execute(sql, values)
    db.commit() 

    cursor.close()
    db.close()

Вот fetchMessages на всякий случай

def fetchMessages():
    cursor.execute("SELECT * FROM messages")
    results = cursor.fetchall()
    messages.clear()
    os.system('cls')
    for x in results:
        messages.append(Message(x[1], x[2]))

    return messages

Надеюсь, кто-нибудь ответит.

Спасибо за любую помощь!

...