Controle dos dados de autenticação em PHP

Aqui veremos se os dados de autenticação são corretos e dependendo de se são ou não, se redirecionará ao navegador à aplicação segura ou ao formulário inicial, respectivamente.

Por Miguel Angel Alvarez - Tradução de JML


Publicado em: 09/1/08
Valorize este artigo:
Esta página será encarregada de decidir se os dados de configuração são corretos e agir em conseqüência. Dependendo do nível de segurança que quisermos aplicar a nossa aplicação, esta página será mais ou menos complicada.

À princípio não desejo confundir muito as coisas, portanto explicarei uma versão muito reduzida deste arquivo de controle, na que se comprova se o usuário e senha são dois valores específicos. Isto tem a desvantagem que só podemos criar um usuário/senha diferente e não um sistema que permita muitos usuários distintos. Bom, na verdade sim que permitirá que acessem muitos usuários de uma só vez, porém utilizando todos o mesmo nome de usuário e senha.

Em aplicações mais avançadas poderíamos ter em um banco de dados uma lista de usuários com suas senhas. Então, neste arquivo de controle deveríamos fazer uma busca para ver se existe uma correspondência no banco de dados desse usuário com essa senha. Veremos isto mais adiante, agora ficaremos com a versão reduzida.

Depois da comprovação poderão ocorrer duas coisas:
Se os dados são corretos, definirá uma variável de sessão que servirá para saber que esse visitante foi validado corretamente e tem permissão para acessar à aplicação. Ademais, redirecionará ao visitante à página da aplicação restringida.
Se o usuário/senha não era correto, se envia ao navegador à página de início passando a variável errousuario=sim, que indica que houve um erro na autenticação.

O código pode ser visto a seguir:

<?
//vemos se o usuário e senha são válidos
if ($_POST["usuario"]=="miguel" && $_POST["senha"]=="qwerty"){
    //usuario e senha válidos
    //defino uma sessão e salvo dados
    session_start();
    $_SESSION["autenticado"]= "SI";
    header ("Location: aplicacao.php");
}else {
    //se não existir lhe mando outra vez ao portal
    header("Location: index.php?errousuario=sim");
}
?>


Referência: Dois links a documentação relacionada em nosso manual de Programação em PHP:

Aprender o uso de sessões http://www.criarweb.com/artigos/99.php

Aprender o passo de variáveis por formulário http://www.criarweb.com/artigos/96.php





Comentários do artigo
Foram enviados 4 comentários ao artigo
4 comentários não revisados
0 comentários revisados

Usuários :    login / registro

Manuais relacionados
Categorias relacionadas
O autor

Home | Sobre nós | Copyright | Anuncie | Entrar em contato