Foros del Web » Programando para Internet » PHP »

Problema con _Server['http_referer']

Estas en el tema de Problema con _Server['http_referer'] en el foro de PHP en Foros del Web. Pues $_SERVER['HTTP_REFERER'] en firefox no me devuelve nada pero en IE7 si. ¿Por qué puede ser? Gracias....
  #1 (permalink)  
Antiguo 16/09/2008, 04:41
Avatar de AbdelioR  
Fecha de Ingreso: septiembre-2006
Ubicación: Tarragona
Mensajes: 926
Antigüedad: 18 años, 2 meses
Puntos: 8
Problema con _Server['http_referer']

Pues $_SERVER['HTTP_REFERER'] en firefox no me devuelve nada pero en IE7 si.

¿Por qué puede ser?

Gracias.
  #2 (permalink)  
Antiguo 16/09/2008, 09:02
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Problema con _Server['http_referer']

Hola AbdelioR,

Lamentablemente esa variable no es confiable ya que puede ser bloqueada por firewalls o por otros programas, si en FF te sirve y en IE no es probable que tu antivirus bloquee el uso en IE.

Hay muchas formas del porque te devuelva en blanco el valor.

Saludos.
  #3 (permalink)  
Antiguo 16/09/2008, 10:38
Avatar de AbdelioR  
Fecha de Ingreso: septiembre-2006
Ubicación: Tarragona
Mensajes: 926
Antigüedad: 18 años, 2 meses
Puntos: 8
Respuesta: Problema con _Server['http_referer']

Era FF el que no me la detectaba. Me han dicho que en la configuración de firefox, poniendo el valor de network.http.sendRefererHeader a "2" se arregla, y así ha sido, pero no puedo confiar en que los usuarios activados lo vayan a tener activado así que imagino que me quedo sin REFERER.


¿Entonces que opciónes tengo para saber si un usuario accede por primera vez a una sección de la web, y que no sea con sesiones?
  #4 (permalink)  
Antiguo 16/09/2008, 12:05
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Problema con _Server['http_referer']

Lamentablemente no hay forma segura de saberlo, asi es el protocolo HTTP y la Web por eso se le considera "stateless" por eso tu aplicación es la que debe de ver la forma de validar a un usuario (las sesiones es la forma mas efectiva).

Saludos.
  #5 (permalink)  
Antiguo 16/09/2008, 12:07
Avatar de AbdelioR  
Fecha de Ingreso: septiembre-2006
Ubicación: Tarragona
Mensajes: 926
Antigüedad: 18 años, 2 meses
Puntos: 8
Respuesta: Problema con _Server['http_referer']

El problema es que ya tengo sesiones creadas para las cuentas de usuario. ¿Podria crear una sesion totalmente ajena a las cuentas de usuario o tendria que aprovechar la misma?
  #6 (permalink)  
Antiguo 16/09/2008, 12:10
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Problema con _Server['http_referer']

Puedes usar la misma, recuerda que la variable $_SESSION es un arreglo y tu puedes meter mas indices en tu arreglo sin ningun problema:
Código php:
Ver original
  1. $_SESSION['unaVar'] = $algo;
  2. $_SESSION['otraVar'] = $otracosa;
  3. $_SESSION['terceraVar'] = $tercer_algo;

Saludos.
  #7 (permalink)  
Antiguo 16/09/2008, 14:18
Avatar de AbdelioR  
Fecha de Ingreso: septiembre-2006
Ubicación: Tarragona
Mensajes: 926
Antigüedad: 18 años, 2 meses
Puntos: 8
Respuesta: Problema con _Server['http_referer']

He probado con sesiones y no lo consigo... de cualquier manera he visto que las cookies hay que mandarlas antes de la etiqueta [html] y yo lo hacia en el footer por lo que imagino que era por eso que no iba no?

El hecho de tener que mandarlas antes de cargar la página me desmonta el sistema pero estoy probando otra cosa a ver si sale.

Quiero mantener una cookie activa mientras no me encuentre en el "index.php". Lo hago asi:

En el header.php que contienen todos los ficheros:

Código PHP:
if (($_SERVER['REQUEST_URI'] != "/") && ($_SERVER['REQUEST_URI'] != "/index.php ")){
    
setcookie("ckDescarga""1"time()+10);

Es decir, si no estas en el indice, manda la cookie. Pues tampoco va :S, va a veces pero otras no >_<, en fin no se, no consigo ver que hago mal, y mira que es sencilla la cosa..
  #8 (permalink)  
Antiguo 16/09/2008, 15:03
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Problema con _Server['http_referer']

Te recomendaria que intentaras hacerlo por sesiones, las cookies muchas veces el control es diferente, y no funcionan como esperas, más a tiempos tan cortos como lo estas manejando.

Saludos.
  #9 (permalink)  
Antiguo 16/09/2008, 15:09
Avatar de AbdelioR  
Fecha de Ingreso: septiembre-2006
Ubicación: Tarragona
Mensajes: 926
Antigüedad: 18 años, 2 meses
Puntos: 8
Respuesta: Problema con _Server['http_referer']

Con sesiones prefiero no hacerlo porque la liaré aun más creo yo...tengo el foro phpbb incluido en la web y esta esa sesion a veces activa y a veces no, y es un engorro.

Me acabo de enterar que lo que quiero hacer es un sistema antileech, voy a ver que encuentro :S
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 12:58.