<?php /* Denvolvido por: Vanessa Schissato nessa_uepa@yahoo.com.br webmaster@vs-solutions.com 11/12/2005 Descricao: Essa classe tem por funcao validar as paginas vindas pela variavel "pg" da url, antes de serem incluidas na pagina Essa classe deve ser incluida no arquivo para se usar suas funcoes: require_once "ValidaPagina.class.inc"; *********************************** Exemplo de Uso: <?php // Paginas validas $validas[] = "artigos"; //artigos.php $validas[] = "contato"; //contato.php $validas[] = "servicos"; //servicos.php // Inclui classe require_once "ValidaPagina.class.inc"; // Cria objeto de validacao da pagina para inclusao $validacao = new ValidaPagina($_GET['pg'],$validas); // Valida pagina if($validacao->Verifica()){ include $validacao->pagina; // Pagina valida incluida }else{ include $validacao->pagina_erro; // Pagina nao valida, inclui pagina de erro } ?> */ Class ValidaPagina{ var $pagina; var $validas; var $host = "http://www.seusite.com/"; /*nome do host *importante para evitar inclusao maliciosa de paginas externas*/ var $pagina_inicial = "principal"; //principal.php var $pagina_erro = "erro404"; // erro404.php // Metodo construtor function ValidaPagina($pagina,$validas){ $this->pagina = $pagina; $this->validas = $validas; } /* Verifica validacao da pagina, retornando true se valida ou false se nao-valida e montando a variavel pagina pra ser incluida ou pagina_erro */ function Verifica(){ if(!$this->pagina){ // Pagina inicial $this->pagina = $this->host.$this->pagina_inicial.".php"; return true; }else{ // Verifica se pagina na lista foreach($this->validas as $valor){ if($valor == $this->pagina){ $ok++; break; } } if($ok){ $this->pagina = $this->host.$this->pagina.".php"; return true; }else{ $this->pagina_erro = $this->host.$this->pagina_erro.".php"; return false; } } } } ?>