Не сохраняется и проверяется логин в базе данных в python - PullRequest
1 голос
/ 23 января 2020

Я делаю программу, в которой мне нужно выполнить системный вход в систему, сохраненный в базе данных.

Программа не сохраняет и не проверяет пользователей в базе данных. Может ли кто-нибудь помочь мне понять, где я ошибся?

Я все еще начинающий программист.

Большое спасибо!

def login():
  global screen1
  screen1 = Toplevel(screen)
  screen1.title("Login!")
  screen1.geometry("300x250")

  global username
  global password
  global username_entry
  global password_entry
  username = StringVar()
  password = StringVar()

  Label(screen1, text = "Ensira os seus dados nos campos abaixo!").pack()
  Label(screen1, text = "").pack()
  Label(screen1, text = "Utilizador * ").pack()
  username_entry = Entry(screen1, textvariable = username)
  username_entry.pack()
  Label(screen1, text = "Password * ").pack()
  password_entry =  Entry(screen1, textvariable = password)
  password_entry.pack()
  Label(screen1, text = "").pack()
  Button(screen1, text = "Entrar.", width = 10, height = 1, command = VerificarLogin).pack()


#Função para receber a password e criptografa-la para comparar 
def VerificarLogin():
    password = password_entry.get()
    encodedBytes = base64.b64encode(password.encode("utf-8"))
    passEncry = str(encodedBytes, "utf-8")

    cursor.execute("UPDATE user SET Online = '0' WHERE nome = 'admin' ")
    ConnectBD.connection.commit()
    cursor.execute("UPDATE user SET Online = '0' WHERE nome = 'Angelo' ")
    ConnectBD.connection.commit()
    cursor.execute("UPDATE user SET Online = '0' WHERE nome = 'Henrique' ")
    ConnectBD.connection.commit()



    if password.get() == "admin" and passEncry == username[0][2]:
        cursor.execute("UPDATE user SET Online = '1' WHERE nome = 'admin' ")
        ConnectBD.connection.commit()



    for x in range(len(username)):
        if password.get() == username[x][1] and passEncry == username[x][2]:
            cursor.execute("UPDATE user SET Online = '1' WHERE nome = '%s' "%(username[x][1]) )
            ConnectBD.connection.commit()
...