Tengo un sitio creado con php que usa sesiones del lado del servidor en todo el sitio.
De hecho, es un sitio con un inicio de sesión de usuario que depende de las variables de sesión y si hubiera un problema con todas las variables de sesión, no se cargarían páginas en absoluto.La sesión de PHP no funciona con IE
En el sitio, hay un iframe que contiene un feed de pequeños mensajes de otros usuarios.
Esos pequeños mensajes tienen fotos clicables al lado de ellos que abren el perfil del usuario.
Ahora, cada página requiere algún formato para abrir el perfil del usuario en esa página específica ... solo hay unas pocas páginas con problema, pero esas páginas tienen que tener las funciones onclick formateadas de forma diferente o rompen la página.
Así que configuré una variable de sesión en cada página ($_SESSION["current_page"]
) que permite que el feed sepa cómo formatear las fotos en las que se puede hacer clic. Ahora Firefox, Opera, Chrome, Safari funcionan como deben.
Pero IE6 e IE7 tienen problemas en las páginas que requieren un formato especial.
Así que después de sacarme un poco el pelo, finalmente logré imprimir las variables de sesión del servidor.
Y he aquí, en las páginas especiales, ($_SESSION["current_page"]
) siempre se establece en "principal" en lugar de "especial1" o "especial2".
Imprimí la misma variable de sesión en Firefox y en todos los otros navegadores que mencioné e imprimen "special1" o "special2" como se supone que deben.
¿Alguien puede pensar en algo, posiblemente relacionado con el hecho de que la alimentación está en un iframe? - ¿Eso causaría que IE tratara las variables de sesión del lado del servidor de manera diferente o de alguna manera iniciara la página "principal" silenciosamente en el fondo?
He revisado el feed con mucho cuidado para cualquier referencia a la página "principal" - no parece que haya ninguna forma de cargar esa página.
esto no tiene sentido para mí.
Para cualquier otra persona que tenga este problema, recomiendo cerrar completamente IE y volver a abrirlo. Esto me estaba sucediendo en IE10, y pasé aproximadamente media hora probando todas las soluciones a continuación sin ningún resultado. Aproximadamente 1 de cada 10 veces la sesión se mantendrá con vida el tiempo suficiente para que inicie sesión en mi sitio y luego vuelva a morir. Después de reiniciar el navegador, todo funciona bien. – mpen