Categorias

Restringir acesso a páginas (aprimorado)

Olá pessoal, devido a uma solicitação por email vindo de um usuário do´Código Fonte, segue abaixo e anexo, um aprimoramento de validação de páginas.

Qualquer dúvida, sabem como me encontrar.

Bem está aí, para facilitar, mandei em anexo os scripts testados por mim mesmo, espero te ajudado.

Abraços,
Moacir

1º PASSO - Você deve criar a página index.php, index2.php e validacao.php

NOTA: Poderiamos fazer esta validação por cookies, mas escolhi fazer com sessões, pois é mais seguro, e bem mais complicado para burlar nosso código.

2º PASSO - Há pagina index.php é o nosso cara, ela é quem vai determinar o acesso a outra, que chamamos de index2.php. Antes de qualquer código na página você vai inserir o seguinte código:



3º PASSO - Agora iremos criar a nossa página dependente que é a index2.php, que poderia ser qualquer nome, nela a única coisa que você vai fazer é dar um REQUIRE_ONCE que significa, arquivo obrigatório para execução da página, este aquivo é o validacao.php. Você pode me perguntar, porque não colocar o comando direto na index2.php? Bem, você pode fazer isso, mas já estou prevendo que futuramente você vai querer usar validação para mais de uma página, e quando isso acontecer, você já sabe trabalhar com o método adequado, até porque, se você precisar mudar alguma sessão na hora de setar, você vai ter que mudar também na validação, o que lhe poupa tempo, pois você irá mudar em apenas 01 arquivo. Imagine ter que mudar em 300 arquivos a mesma coisa... Ninguém merece.

Portanto, no arquivo index2.php que é o que precisa de validação, insira antes de qualquer código o código?



4º PASSO - Agora na página validacao.php, iremos validar, ou verificar se as sessoes e valores criados na pagina index.php existem no servidor, caso sim, continua da pagina na qual é chamada o arquivo validação que neste caso é index2.php, senão, redirecionamos para a página index.php. no arquivo validacao.php deve ter apenas este código:

";
 echo $Chave;
 }
else
 {
 //Caso as sessoes não existam, ou seus valores não conferem, redirecionamos
 header("Location: index.php");
 } 
?>

Arquivos para Download:

index.php.txt