Vaya, cuanta complicación siendo la cosa más básica del mundo.
Si no deseas que nadie pueda llegar directamente a tu página "ultrasecreta"(aunque sepan el nombre de esta)
Lo que se debe hacer es agregar esto en el index
Código PHP:
<?php
define("In_SITE", true);
?>
Despues poner el siguiente código en la página ultrasecreta:
Código PHP:
<?php
if (!defined("ON_OUR_SITE"))
{
die ("Esta página esta prohibida para tus ojos");
}
?>
Otra alternativa es esta:
Si alguien intenta llegar directamente a nuestra pagina ultrascreta.php
Código PHP:
if(substr_count($_SERVER['SCRIPT_NAME'], "ultrascreta.php") >= 1){
header("location:../404.php");
}
¿Y donde esta el truco? Bueno, si ultrasecreta.php esta incluida en otra página podrá recibir parámetros y seguir funcionando normalmente siempre y cuando el get o post no la llame directamente.
Es tan simple que no veo por que el usuario que pidio
amablemente la solución no se esforzo por leer un poco de documentación oficial.
Creo que sería mejor estudiar un poco más lo básico y luego seguir con lo demás.
Salud.