Ir para conteúdo
MasterJ

fazer login

Recommended Posts

nao consigo encontrar o erro neste codigo


 

<?php 

if(isset($_POST['btnLogin'])){
  $email = trim($_POST['user_email']);
  $upass  = trim($_POST['user_pass']);
  $h_upass = sha1($upass);
  
   if ($email == '' OR $upass == '') {

      message("Invalid Username and Password!", "error");
      redirect("login.php");
         
    } else {  
  //it creates a new objects of member
    $user = new User();
    //make use of the static function, and we passed to parameters
    $res = $user::userAuthentication($email, $h_upass);
    if ($res==true) { 
       message("You logon as ".$_SESSION['ROLE'].".","success");
      if ($_SESSION['ROLE']=='Administrator' || $_SESSION['ROLE']=='Student'){

        $_SESSION['ADMIN_USERID'] = $_SESSION['USERID'];
        $_SESSION['ADMIN_FULLNAME'] = $_SESSION['FULLNAME'] ;
        $_SESSION['ADMIN_USERNAME'] =$_SESSION['USERNAME'];
        $_SESSION['ADMIN_ROLE'] = $_SESSION['ROLE'];

        unset( $_SESSION['USERID'] );
        unset( $_SESSION['FULLNAME'] );
        unset( $_SESSION['USERNAME'] );
        unset( $_SESSION['PASS'] );
        unset( $_SESSION['ROLE'] );

         redirect(WEB_ROOT."admin/index.php");
      } 
    }else{
      message("Account does not exist! Please contact Administrator.", "error");
       redirect(WEB_ROOT."admin/login.php"); 
    }
 }
 } 
 ?> 

 

Editado por Gabriel Heming
adicionar formatação de código

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que está acontecendo?

Não autentica?

Não consegue verificar o usuário/senha?

Não está redirecionando corretamente após autenticar?

Não está mostrando a mensagem de login com sucesso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sobre a autenticação, é possível ver apenas o código, leia os posts do link abaixo :

https://forum.imasters.com.br/topic/557686-trabalhando-com-criptografia-de-login-com-md5/?do=findComment&amp;comment=2225560

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
Em 31/01/2019 at 17:35, Massaki disse:

Não está redirecionando corretamente após autenticar?

 

Exatamente, simpleste diz da erro 404. Saudacoes

 

Posso ate enviar o codigo todo. Porqur Estou precisando de ajuda.

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

  • Conteúdo Similar

    • Por Mduarte87
      Olá boa noite a todos.

      Pesquisei no  forum por esta questão e não encontrei resposta.
      Sou novo nestas andanças mas derivado ao fascínio e á necessidade estou a começar a criar uma pagina para a minha empresa. Está tudo a correr lindamente e apesar de não dominar qualquer tipo de código estou a construir o visual do site sem problemas. Estou a adorar o resultado bem como o trabalho em si. 
      A minha duvida é a seguinte: 
        Eu gostava que uma das minhas paginas tivesse bloqueada por login, até aqui tudo bem de certeza que haverá muitos plugins para isso, mas estou a tentar criar algo mais complexo que vou tentar explicar o melhor possível. 
      A pagina em questão seria um blog o que realmente pretendia era que cada post tivesse uma password diferente. Ou seja os clientes carregavam no link desta pagina situado no menu eram direccionados para um login e ao colocarem a password fornecida eram logo encaminhados para o post respectivo. Eu sei que posso criar um blog e bloquear os posts por password mas assim qualquer cliente ao entrar na pagina iria ver todos os posts existentes carregar naquele que pretende e colocar a password que lhe dei, mas eu nao queria mesmo que os posts estivessem visíveis ao publico em geral da pagina. 
         Não sei se me expliquei bem mas agradeço desde já a toda a comunidade que me possa dar uma dica.
    • Por Rafael Ferreira_163968
      Boa noite amigos, armazeno em um mysql senhas geradas pelo seguinte codigo:
       
      $name = "name"; $email = "email"; $password = "pass"; $string = mcrypt_create_iv (24, MCRYPT_DEV_URANDOM); $salt = strtoupper(bin2hex ($string)); $hash = hash_pbkdf2 ("sha1", $password, $string, 1000, 24, true); $hash = strtoupper(bin2hex ($hash)); //finalmente execute a seguinte consulta: $qrCreate = "INSERT INTO tc_users (name, email, hashedpassword, salt) VALUES ('$name', '$email', '$hash', '$salt')"; $stCreate = mysql_query($qrCreate) or die ('Erro ao cadastrar em '.$tabela.' '.mysql_error()); esse codigo insere um hash e salt unico nos campos, por mais que insira a mesma senha em outro usuario o hash e salt serao diferentes.
       ai vem a duvida, como eu faço para comparar a senha texto digitada pelo usuario com os dados inseridos no BD, por exemplo,
      se eu fizer a seguinte comparacao:
      $readTeste = read('tc_users',"WHERE id = '2'"); foreach ($readTeste as $teste); $pass = $teste['hashedpassword']; if (password_verify('pass', $pass)) { echo 'Password is valid!'; } else { echo 'Invalid password.'; } so me retorna invalido. function read esta funcionando, se eu printar o resultado da hashedpassword ele retorna os dados do banco ok. minha duvida e como comparar a senha texto com o banco, se é com o hash ou com o salt ou com os dois junto e como. desde ja obrigado
    • Por rodrigo-tadeu-rocha@hotmai
      ola preciso desenvolver uma área de cliente personalizada onde ele vai ter acesso aos pedidos feitos na loja , dados pessoais e endereços mais tem um detalhe na hora que ele for rastrear o produto dele quero fazer uma pagina de correio diferente onde posso habilitar um link se possível no plugin para redirecionar o cliente pra uma pagina de correios internacional...(uso o tema oceanWP free)
    • Por Antonio Barbosa
      Saudações colegas,
      Sou novo aqui na comunidad e estou com um grave problema, mas que penso ser muito simples.
       
      Normalmente sempre trabalhei com MySQL, nos meus projectos em php sempre trabalhei e tudo funciona perfeitamente, porém, estou numa empresa em que o SGBD é SQL SERVER  e tenho enfrentado alguns problemas, consigo fazer quase tudo que fazia quando o SGBD era MySQL, mas conforme o projecto na empresa vai crescendo, cresce também  a dificuldade de implementar as minha ideias usando o SQL SERVER, cá vai o problema:
       
      Tenho uma tela de Login em que o mesmo faz a requisição no Banco de Dados SQL SERVER, ele funciona 75%, caso eu coloque o Username Errado, ele trás a mensagem Dados Errados, caso eu erre a Senha, ele apresenta a mensagem de Senha Incorrecta, até aqui tudo bem, mas se eu colocar todos os dados correctos, ele não me apresenta nenhuma mensagem e não me renderiza para a página de destino.
       
      Estou a trabalhar com MVC, abaixo segue-se o código.
       
      Controller
       
      function entrar(){
              $data = array();
              $data['username'] = $_POST['nome_utilizador'];
              $data['password'] = sha1($_POST['senha']);
       
              if(!is_null($this->model->verificausername($data))){
                  echo 2;
              }
              else if(!is_null($a = $this->model->verificasenha($data))){
                  
                  echo 3;
              }    
              else if (!is_null($this->model->entrar($data))):
              echo 1;

          endif;
      }
       
      Model
       
      public function entrar($data){
       $sth =  $this->bd->prepare("SELECT *  FROM tKxUsUtilizador WHERE UtCodigo = :username AND UtSenha = :password");
       $sth->execute(array(
          ':username' => $data['username'],
          ':password' => $data['password']
      ));
       $data = $sth->fetch();
       $count = $sth->rowCount();
       if($count > 0):
                  //login
          Session::init();
          Session::set('UtCodigo', $data['UtCodigo']);
            Session::set('UtSenha', sha1($data['UtSenha']));
          Session::set('loggedIn', true);
          return 1;
      else:
          return null;
      endif;
      }
       
      Preciso muito dessa ajuda,
       
      Obrigado.
    • Por JoaoVituBR
      Olá, eu tenho 2 servidores (Socket.io Redis) comunicando entre si, e gostaria de saber se tem como, e como posso fazer que salve a sessão para que o usuário quando conectar no outro servidor ele não precise fazer login novamente.

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.