Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

lifeSample

Função para trancar página (acesso direto)

Recommended Posts

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
		}
}
?>

Esta é a página onde fica a função, para você nao ter de escrever em todas as página.

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:

http://lyme.net76.net/lock/

 

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

Interessante!

Fazia isso utilizando:

<?php
$pag = $_SERVER['PHP_SELF'];
if(!ereg('index.php',$pag)){
	die("Não pode ser acessado diretamente");
}
?>

Ai incluia em todo que precisava!

Abraço!

 

Ps:as vezes é legal no ereg colocar outras coisas,quem sabe:

http://seusite.dominio/index.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Utilizo o exemplo o Alaerte e achei interessante o seu!

 

<?php
if(basename(__FILE__)) {
	header("Location: index.php");
}
?>

Abs!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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