Ir ao conteúdo
  • Cadastre-se
Pedro Henrique Eccher

Problema no login (pdo)

Recommended Posts

Alguém poderia me ajudar com esse código, não estou conseguindo obter o retorno de login realizado.

 

conectar.php

?php
    include('config.php');
    if(isset($POST['login1']))
    {
        
        //obtem dados form
        $emailLogin = trim(strip_tags($_POST['enderecoemail']));
        $senhaLogin = trim(strip_tags($_POST['senha']));
        
        //selecionar registro do banco
        $select = "SELECT * FROM administrador WHERE email_empresa = :emailLogin AND Senha = :senhaLogin";
        
        try{
            $result= $db->prepare($select);
            $result->bindParam(':emailLogin', $emailLogin, PDO::PARAM_STR);
            $result->bindParam(':senhaLogin', $senhaLogin, PDO::PARAM_STR);
            $result->execute();
            $contar = $result->rowCount();
            if($contar>=0){
                $emailLogin = $_POST['enderecoemail'];
                $senhaLogin = $_POST['senha'];
                $_SESSION['loginadmin'] = $emailLogin;
                $_SESSION['senhaadmin'] = $senhaLogin;
                echo "logado";
                header("Refresh 3, PainelAdmin/index.html");exit;
            }
            else
            {
                echo "os dados digitados estão incorretos";
            }
            
        }
        catch(PDOException $e){
            echo $e; 
        }
    }
?>

 

index

<form action="conectar.php" method="post">
                        <label>Endereço de Email</label>
                        <input type="text" name="enderecoemail" required data-validation-required-message="Por favor insira seu email"/>
                        <br />
                        <label>Senha</label>
                        <input type="password" name="senha" required data-validation-required-message="Por favor insira sua senha"/ />
                        <br />
                        <div class="checkbox">
                            <input id="remember" type="checkbox" />
                            <label for="remember">Mantenha-me conectado</label>
                        </div>
                        <div class="action_btns">
                            <div class="one_half"><a href="#" class="btn back_btn"><i class="fa fa-angle-double-left"></i> Voltar</a></div>
                            <button type="submit" name="login1" class="btn btn_red">Login</button>
                            
                        </div>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nesses casos lembre de postar o erro ou o que exatamente está acontecendo, não só o resultado esperado que falhou em conseguir. É chato ficar lendo código tentando descobrir onde está parando.

 

Alguns problemas que vejo no seu código:

  • Seu código sempre parará no primeiro if se não estiver dando erro, pois ele diz "se o número de linhas for IGUAL ou MAIOR que ZERO". Sempre será igual ou maior que zero. O meu palpite é que não há usuário e senha correspondentes na DB e seu código está engasgando ali ao invés de prosseguir para a mensagem correta.
  • Por quê está pegando login e senha do post novamente após executar um pdo com sucesso? O POST pode ter espaços e tudo mais. Use as variáveis já prontas.
  • Fora isso, não vejo o porquê des estar usando o strip_tags ali. Só serve para remover tags HTML, não trata variáveis. Alguém dificilmente estaria usando html em campo de login e senha e as variáveis já foram tratadas ao usar o prepare().

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro 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 publicações 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

×