Ir ao conteúdo

Posts recomendados

Postado

Olá boa noite, eu estou tendo esse problema ja faz dias e não consigo ressolver, ja tentei de tudo mas nada funciona, Enfim, eu estou criando uma tela de cadastro e login, salvando todas as informações em um banco de dados do Sqlite3, Quando eu vou compara os dados que o usuário digita, consigo comparar somente os dados do nome, ja a senha eu não consigo,  mesmo eu abrindo somente a tabela em um código novo não funciona... OBS: irei resumir o código e deixar somente como estou fazendo essa comparação, pois, o mesmo está muito grande. E estou salvando todos os dados como texto.

 

import sqlite3

'''
Criando o banco de dados 

path = r'coloque o diretório onde ira se localizar o banco de dados'
Banco = sqlite3.connect(path+ r'\DbLogin.db')
Cursor = Banco.cursor()

try:
    Cursor.execute("CREATE TABLE cadastro (NOME text, SOBRENOME text, EMAIL text, SENHA text, CONFIRMAR_SENHA text)")
except:
    pass   
'''

#Criei esse input somente para simular a entrada dos dados na interface gráfica
nome = input("NOME: ")
senha =  input("SENHA: ")

#Chamando meu banco de dados e me conectando ao mesmo
'''
    Dados salvos no banco de dados:

    NOME---------SOBRENOME---------EMAIL-----------SENHA-------CONFIRMAR_SENHA
    
    |Admim 'txt' |  Admim      |  *********   |      123     |        123     | 
'''
Banco = sqlite3.connect('DBlogin.db')
Cursor = Banco.cursor()
Cursor.execute("SELECT NOME FROM cadastro")

#Salvando todos os dados da coluna NOME dentro da variável
Dados_nome = Cursor.fetchall()

#Salvando todos os dados da Coluna SENHA dentro da Variável
Cursor.execute("SELECT SENHA FROM cadastro")
Dados_senha = Cursor.fetchall

linha_nome = 0
linha_senha = 0
#lendo todos os dados que estão dentro do banco de dados   
for row in Dados_nome:
    print(row)
    
    #Comparando a entrada de dados com os do banco de dados 
    if row[linha_senha] == nome:
        print("Nome OK")
        for confir in Dados_senha:
            print(row2)
            if row2(linha_senha) == senha:
                print("Senha OK")
        linha_senha + 1
linha_nome +1

 

  • mês depois...
Postado

Qual a ideia de comparar estes valores? O que esta comparação pretende fazer? Por que você não seleciona o nome e a senha em um mesmo select? Assim a senha estaria na mesma linha do nome...

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!