Foros del Web » Programando para Internet » PHP »

$_SERVER['HTTP_REFERER'] - (¿Cluster?)

Estas en el tema de $_SERVER['HTTP_REFERER'] - (¿Cluster?) en el foro de PHP en Foros del Web. Hola a [email protected]; Estoy utilizando el autentificator de cluster i tengo un pequeño problemilla: En una de las paginas, tengo un boton que me sirve ...
  #1 (permalink)  
Antiguo 08/02/2003, 18:33
 
Fecha de Ingreso: enero-2003
Mensajes: 55
Antigüedad: 14 años, 11 meses
Puntos: 0
$_SERVER['HTTP_REFERER'] - (¿Cluster?)

Hola a [email protected];

Estoy utilizando el autentificator de cluster i tengo un pequeño problemilla:

En una de las paginas, tengo un boton que me sirve para eliminar ciertos datos. Antes de eliminarlos, le pido confirmacion
con una funcion de javascript:
Código PHP:
//no es php es javascript
    
function eliminar(Indice){
        if (
confirm('¿Eliminar este formulario?')){
            
direccion="Admin.php?Opcio=ad_eli&ID="+Indice;
            
window.location=direccion;
        }
    } 
A esta funcion la llamo desde un boton:

<a href='javascript:eliminar($ID_adult)'>Eliminar</a>

El problema es que cuando llego a Admin.php, cuando comprueva si $_SERVER['HTTP_REFERER'] contiene una direccion me tira el error : Error cod.:1 - Acceso incorrecto!, oceace que no hay direccion.
¿Como hago para que no me pase esto?
Gracias adelantadas
__________________
MACBOMB
webmast....... :adios:
  #2 (permalink)  
Antiguo 08/02/2003, 19:10
Avatar de Kernellover  
Fecha de Ingreso: noviembre-2002
Ubicación: Perdido
Mensajes: 251
Antigüedad: 15 años
Puntos: 0
Creo que si que hay direccion pero reconoce que ha sido llamada la pagina de forma indebida, creo...

Yo ese problema me dio bastante por el cu...o, simplemente borré la parte de código que me daba el problema, pero con ella perdí la una de las opciónes de seguridad que aporta el Autentificator de Cluster.

Es una solución a cotro plazo supongo, aunque si solo son pruebas lo que haces te puede servir, como a mi me sirvió.

Lo borré del archivo aut_verifica.inc.php

Saludos y suerte !!!
  #3 (permalink)  
Antiguo 08/02/2003, 19:15
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Javascript no es mi fuerte . pero ese redireccionamiento al parecer "limpia" los referrers .. osese de la pagina q viene y yo en mi script por la filosofia de este reviso siempre.

// chequear si se llama directo al script.
if ($_SERVER['HTTP_REFERER'] == ""){
die ("Error cod.:1 - Acceso incorrecto!");
exit;
}

Con eso evito que pongas en tu URL directo el nombre de alguna de tus páginas protegidas y entres a la parte siguiente de verificación de las variables de sesion o de $_POST para el formulario de login ..

Como te habras dado cuenta .. la filosofia del script es:
Login -> pagina autentificada 1 --> pagina autentificada 2 ... y en algun momento volver a la pagina 1 por ejemplo .. Pero una vez entrado en el primer ciclo .. siempre existirá una pagina referida de donde venga ..

Puedes quitar ese condicional sin problemas .. pues siempre se evaluan las variables de sesion o de $_POST del formulario de login como ya he mencionado. Pero ... en los casos típicos (sin usar javascript para redireccionamientos) es una forma rápida de comprobar parte de seguridad sin saltar al grueso del código ..

Otra opción (la típica ..) es simplemente q tu función javascript tan solo verifique o no el "Submit" del link q estarias genererando para enviar las variables que usas a tu admin.php .. o formulario.

Código:
 (javascript)

function confirmar_borrar() {
 if (confirm("¿Desea Borrar Registro(s) seleccionado(s)?")){
    return true;
    } else {
    return false;
  }
}
Y en tu link:
<a href="Admin.php?Opcio=ad_eli&ID=1" onClick="return confirmar_borrar();">

Obtener ese ID q usas via javascript ya es tarea tuya .. o bien lo imprimes al listar esos registros y sus ID's correspondientes o de donde los obtengas ..

Con esto ya no redireccionas sino q sigues el camino q indiqué mas arriba y por ende tendrias los "referrers" siempre disponibles.

Un saludo,
  #4 (permalink)  
Antiguo 08/02/2003, 20:28
 
Fecha de Ingreso: enero-2003
Mensajes: 55
Antigüedad: 14 años, 11 meses
Puntos: 0
Gracias Cluster, Que hariamos sin ti!!
__________________
MACBOMB
webmast....... :adios:
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:39.