Como ya te indiqué .. te recomendaría quitar dicha validación .. de hecho por mi parte en alguna versión que saque de "Autentificator" es lo primero que voy a eliminar.
Los veneficios que dá dicha validación:
Posibilidad de no depender de cierto nombre de escript para devolver los mensajes de error a dicha página.
vs
Los "contra" que tiene:
Si abres ventanas con javascript .. el dato del "HTTP_REFERER" no existe en la mayoría de casos .. Existen ciertos proxy's o navegadores que pueden ocultar o denegar por completo dicha información .... (por decir algunos casos).
Son menos los beneficios vs a los problemas que puedes tener.
----------------------------
La solución que te dije al respecto simplemente es:
Código PHP:
$redir="http://www.tal.tal/script_login.php";
Indicar el URL a tu formulario de login . .eso es, simplemente.
Otra solución sería simplemente ver si "existe" dicha variable .. si está .. la usas .. sino, ... validas. Pero si bien esto te eliminar el "notice", tendrás los mismos problemas "colaterarles" cuando uses ventanas emergentes (pop-up) .. etc .. como ya mencioné.
Código PHP:
if (isset($_SERVER['HTTP_REFERER'])){
$url = explode("?",$_SERVER['HTTP_REFERER']);
$pag_referida=$url[0];
$redir=$pag_referida;
} else {
die ("Error cod.:1 - Acceso incorrecto!");
}
Un saludo,