Foros del Web » Programando para Internet » Javascript »

Problema leyendo cookies en IE8

Estas en el tema de Problema leyendo cookies en IE8 en el foro de Javascript en Foros del Web. Hola que tal, tengo un pequeño problemilla, estoy haciendo un sistema de comentarios que reconoce a usuarios recurrentes y uso javascript para leer cookies, el ...
  #1 (permalink)  
Antiguo 11/11/2010, 13:06
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 21 años, 2 meses
Puntos: 4
Problema leyendo cookies en IE8

Hola que tal, tengo un pequeño problemilla, estoy haciendo un sistema de comentarios que reconoce a usuarios recurrentes y uso javascript para leer cookies, el problema es que ie8 no lee completas las cookies que defino desde php, firefox y chrome las leen sin problemas.

en PHP defino las cookies asi:
Código PHP:
        if (!isset($_COOKIE["nombreu"])){
            
setcookie("nombreu"$vusuariotime()+604800);
            
setcookie("emailu"$vemailtime()+604800);
        }else{
            echo 
"definido:" $_COOKIE["emailu"];
        } 
y en javascript las leo asi:
cookievar=document.cookies;

Revise configuracion de privacidad en IE8 y todo esta bien, de hecho PHP si imprime bien el valor de la cookie en IE pero desde javascript no.

Espero puedan ayudarme, gracias de antemano
  #2 (permalink)  
Antiguo 11/11/2010, 13:50
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 16 años, 6 meses
Puntos: 1012
Respuesta: Problema leyendo cookies en IE8

estás mezclando dos lenguajes. una cookie creada en php no puede ser leía en el cliente y vice versa. en el cliente te puede suceder que hayas creado la cookie con ff y cuando vas a leerla con ie, opera, chrome,... no la puedes leer. si este es caso, busca por los términos cookie cross browser
  #3 (permalink)  
Antiguo 11/11/2010, 14:00
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 21 años, 2 meses
Puntos: 4
Respuesta: Problema leyendo cookies en IE8

Gracias por responder, tiene sentido lo que dices pero se me hace raro que funcione en firefox y chrome, tal vez lo que tengo que hacer es crear la cookie desde javascript cuando el usuario usa ie.
Por cierto lo que hacia no era crear una cookie en firefox y leerla en ie, creaba la cookie en FF con PHP y la leia bien desde javascript en firefox, igual con chrome. Solo pruebo compatibilidad en los navegadores mas populares. saludos
  #4 (permalink)  
Antiguo 11/11/2010, 14:12
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 16 años, 6 meses
Puntos: 1012
Respuesta: Problema leyendo cookies en IE8

Cita:
Iniciado por xcorpion Ver Mensaje
Por cierto lo que hacia no era crear una cookie en firefox y leerla en ie, creaba la cookie en FF con PHP y la leia bien desde javascript en firefox, igual con chrome
se me hace muy raro que se sea posible hacer lo que dices, pero si tu lo dices....
por cierto he buscado un poco y he encontrado esto
Cita:
IE7 doesn't save cookies with short expiration times. eg: 30 mins, 1 hour, etc. So change your cookie expiry time to 1 day cookie and it will work fine with every browser. IE7 doesn't save short time expire cookies.
tal vez para ie8 también sea una solución
  #5 (permalink)  
Antiguo 11/11/2010, 14:26
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 21 años, 2 meses
Puntos: 4
Respuesta: Problema leyendo cookies en IE8

Gracias isabel, la cookie la creo de una semana, trate de crearla desde javascript y tampoco me funciono, creo que por hoy lo voy a dejar, gracias de cualquier forma.

Saludos
  #6 (permalink)  
Antiguo 11/11/2010, 16:39
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 7 meses
Puntos: 1485
Respuesta: Problema leyendo cookies en IE8

indica la url para revisarlo con iexplorer8. se me hace muy raro que iexplorer no te devuelva la cookie completa.

Cita:
Iniciado por IsaBelM Ver Mensaje
una cookie creada en php no puede ser leía en el cliente y vice versa.
¿cuan segura estas de eso? sepase que una cookie es parte del encabezado de mensajes HTTP, tanto en la peticion como en la respuesta. un ejemplo de una cookie creada desde el servidor enviada por encabezado http.
Código:
Set-Cookie: name=newvalue; expires=date; path=/; domain=.example.org.
una cookie enviada por el navegador al servidor por encabezado http en la peticion se ilustra asi:
Código:
Cookie: name=value
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #7 (permalink)  
Antiguo 11/11/2010, 17:16
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 21 años, 2 meses
Puntos: 4
Respuesta: Problema leyendo cookies en IE8

Aqui hay una muestra:
http://www.wopvideos.com/videos/6932.htm
  #8 (permalink)  
Antiguo 11/11/2010, 17:38
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 7 meses
Puntos: 1485
Respuesta: Problema leyendo cookies en IE8

no veo como el enlace refleja el problema que describes. las unicas cookies que veo son de google: __utma, __utmb, __utmc y __utmz. ¿podrias explicar la relacion?
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #9 (permalink)  
Antiguo 11/11/2010, 17:43
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 21 años, 2 meses
Puntos: 4
Respuesta: Problema leyendo cookies en IE8

Creo que esas cookies las crea el script de google analitycs, las cookies que crea mi script no aparecen nunca en IE, en FF y chrome si.
  #10 (permalink)  
Antiguo 11/11/2010, 18:00
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 7 meses
Puntos: 1485
Respuesta: Problema leyendo cookies en IE8

he revisado en firefox y chrome la existencias de otras cookies. solo me muestra las antes mencionadas. ¿seguro que estas creando bien las cookies? solo por mencionar, al crear las cookies en php, tienes que hacerlo antes de que el contenido html se envie.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #11 (permalink)  
Antiguo 11/11/2010, 18:07
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 21 años, 2 meses
Puntos: 4
Respuesta: Problema leyendo cookies en IE8

Si lo hago antes de enviar cualquier cosa, la cookie se crea al enviar un comentario.
  #12 (permalink)  
Antiguo 11/11/2010, 18:31
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 7 meses
Puntos: 1485
Respuesta: Problema leyendo cookies en IE8

ya veo donde esta el problema, y no solo se produce en iexplorer8 sino en cualquier navegador. la cookie se crea pero al no indicarle un path, el navegador agrega el path en relacion a la ruta donde se crea la cookie. en tu caso, la cookie se crea con el path /cajas/ y solo es accesible desde los documentos desde dicho directorio y subdirectorios. si requieres que la cookie sea accesible desde todo el sitio, entonces tienes que indicar el path con la ruta al root. o sea, simplemente indicas "/" como path.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.

Última edición por zerokilled; 11/11/2010 a las 18:38
  #13 (permalink)  
Antiguo 11/11/2010, 18:33
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 21 años, 2 meses
Puntos: 4
Respuesta: Problema leyendo cookies en IE8

Ok, voy a probar eso, no se me habia ocurrido, muchisimas gracias por el apoyo
  #14 (permalink)  
Antiguo 11/11/2010, 18:39
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 21 años, 2 meses
Puntos: 4
Respuesta: Problema leyendo cookies en IE8

Solucionado!! muchísimas gracias zerokilled
  #15 (permalink)  
Antiguo 11/11/2010, 20:30
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 6 meses
Puntos: 834
Respuesta: Problema leyendo cookies en IE8

Cita:
Iniciado por IsaBelM Ver Mensaje
estás mezclando dos lenguajes. una cookie creada en php no puede ser leía en el cliente y vice versa. en el cliente te puede suceder que hayas creado la cookie con ff y cuando vas a leerla con ie, opera, chrome,... no la puedes leer. si este es caso, busca por los términos cookie cross browser
Eso puede o no ser cierto: depende de cómo haya sido creada. Si se crea de manera normal, la cookie estará disponible sin problemas en javascript. Tu confusión seguramente se debe a que a partir de php 5.2.0 se agregó a la función setcookie de php un parámetro opcional: el booleano httponly, que fue agregado para evitar que una cookie creada en el servidor esté disponible para javascript (esto con el objetivo de prevenir ataques xss). Pero si ese parámetro adicional no ha sido incluído o ha sido puesto a false, y siempre que el navegador tenga las cookies activadas, no existe ningún problema de accesos desde javascript. Aquí el problema, tal como señala el amigo zerokilled () es que los argumentos path y domain no están definidos.

Última edición por Panino5001; 11/11/2010 a las 20:56 Razón: sintaxis
  #16 (permalink)  
Antiguo 11/11/2010, 21:02
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 7 meses
Puntos: 1485
Respuesta: Problema leyendo cookies en IE8

@panino,
resulta que estaba revisando como se definen las cookies en php y habia visto la propiedad httponly. nunca habia sabido sobre dicha propiedad hasta hace unos dias que investigaba como manejar cookies en las extensiones de chrome y me parecio pura coincidencia. pero no fue hasta hoy que comprendi de que trata la propiedad. buscando informacion habia encontrado que no todos los navegadores tienen soporte para dicha habilidad. entonces pense que el comentario de isabelm pudo haber sido correcto. de todos modos se te agradece por señalar esa informacion.

__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #17 (permalink)  
Antiguo 12/11/2010, 14:04
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 16 años, 6 meses
Puntos: 1012
Respuesta: Problema leyendo cookies en IE8

claro!!! ahora que has nombrado httponly he revisado como creo las cookies del lado del servidor, asp, y por esa razón cuando la probé para responder a este tema no puede tener acceso. uso la propiedad httponly
Cita:
Response.AddHeader "Set-Cookie", "mycookie=galleta; HttpOnly"

Etiquetas: cookies, leyendo
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 20:34.