Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá
Criei uma função simples: (valeu beraldo pelas dicas no outro post)
- Bloqueia acesso direto via URL.
Ex:
Pagina bloqueada: config.inc.php
URL: http://seusite.com/config.inc.php
Resultado: http://seusite.com/erro.php
- Bloqueia via iFRAME.
Pagina bloqueada: config.inc.php
Resultado: Exibi a página de erro dentro do iFRAME
- E claro que não bloqueia via require, pois assim não está sendo acessada diretamente
Modo de usar:
lock.inc.php
<?php
checapagina( basename(__FILE__) ); // Chama a função mas não requere a página, pois você já está nela
Function checapagina($pagina_original){
$pagina_erro='erro.php'; // Nome da página para onde será direcionada a página que for bloqueiada
$redirecionar=$pagina_erro.'?p='.$pagina_original; // Redireciona e manda uma variável 'p' com o nome da página que estava sendo acessada
$pagina_browser=end(explode("/", $_SERVER['SCRIPT_NAME'])); // Captura a página que está sendo acessada no browser
if($pagina_original==$pagina_browser){
exit(header("Location: $redirecionar")); // Para a execução e redireciona
}
}
?>Você deve colocar isso na página, para que ela seja bloqueada:
<?php
@require_once("lock.inc.php"); // Requere a página onde está a função
checapagina( basename(__FILE__) ); // Chama a função
?>
Script em ação:
Download:
http://lyme.net76.net/lock/lock.zip (22KB)
http://lyme.net76.net/lock/lock.rar (19KB)
( inclui pagina de teste, de erro, exemplo, tudo )
Espero ter ajudado
Utilizo o exemplo o Alaerte e achei interessante o seu!
<?php
if(basename(__FILE__)) {
header("Location: index.php");
}
?>
Interessante!
Fazia isso utilizando:
if(!ereg('index.php',$pag)){ Ai incluia em todo que precisava!Abraço!
Ps:as vezes é legal no ereg colocar outras coisas,quem sabe:
http://seusite.dominio/index.php