Geek & Roll - Blog Archive » Cookies y Code Igniter: más problemas

Cookies y Code Igniter: más problemas

Cesar May 14th, 2008 programacion, tips 5 comentarios

Seguimos con los problemas de Code Igniter, esta vez con respecto al manejo de las cookies.

El problema: en averalcine.com usamos cookies para saber que ciudad eligió el usuario, de tal manera que el usuario no tenga que seleccionar una ciudad cada vez que entra al sitio. ¿Ningún problema no? el código funciona de maravilla en Firefox, Safari, Opera, hasta en IE6, pero no en IE7. Mi primera reacción fue culpar al modo protegido de IE7, pero este solo funciona cuando se ejecuta bajo Windows Vista, y tenía una computadora con Windows XP, IE7 y aún así el problema persiste.

La solución: como toda la vida (en la Web), terminamos sacándole la vuelta al error introducido por Internet Explorer. Esta vez no es tanto error per se, sino una característica:

En IE, las políticas de privacidad por defecto entran en funcionamiento para iframes interdominio, especialmente con JavaScript, lo que previene guardar cookies. Si imprimes el session id de la cookie en la página que se carga en el iframe, verás que cambia en cada recarga de la página. Configura una política de privacidad como se define en http://www.w3.org/P3P/ y lo solucionarás.

¿Así o más fácil? (es sarcasmo). En vez de batallar con soluciones únicas para IE, decidimos usar “cookies” del lado del servidor, donde todo el estado se guarda en la base de datos. Introduce más carga al servidor, y el tiempo de respuesta se incrementa, pero funciona en todos los navegadores que hemos probado hasta ahora.

5 Comentarios

Rafyta

May 15th, 2008

tons la culpa es de ie7 o code igniter?

Cesar

May 15th, 2008

La “culpa” es de IE7, por la manera en que implementa sus políticas de privacidad.

Rafyta

May 15th, 2008

damn… eso pensé

JorgeFdez

May 16th, 2008

Y al “culpable” lo encontre yo.. jejeje hasta que hice algo util…

Julian

August 21st, 2009

También tuve este problema. Finalmente lo solucioné de esta manera:
http://www.jigniter.com/solution-to-my-cookies-are-not-working-in-ci-application/

Saludos, felicitaciones por el blog.

Haz un comentario:

Es necesario que dejes tu nombre y correo electrónico (no se publicarán).

Si dejas un comentario anónimo, con insultos o ajeno al tema, iremos hasta tu casa y le diremos a tu mamá la cantidad de porno que hay en tu computadora. Si, lo sabemos.