2010-04-08 26 views
5

Tengo un problema para que las sesiones persistan y, al no tener suerte, debo preguntar.Problema de persistencia de sesión

Puedo acceder a los contenidos de mi sesión como se esperaba cuando los configuré por primera vez, pero tan pronto como la página se actualiza pierdo todo y no veo por qué. session_start() está configurado y no estoy desarmando ni destruyendo nada. Miré PHP Info debajo de las sesiones y todo se ve bien (pero mi comprensión de las sesiones es limitada).

Estoy ejecutando MAMP en OS 10.5, y la última vez que utilicé las sesiones que trabajaron.

+0

session.cookie_lifetime se establece en 0. ¿Eso suena bien? – YsoL8

+0

Estoy obteniendo una matriz vacía con print_r ($ _ SESSION); Y las sesiones se guardan en la carpeta tmp, simplemente no están disponibles. – YsoL8

+0

¡Resuelto! Cambié la session_start a la derecha del código. PHP es divertido! Solo tenía un bloque de comentarios encima. – YsoL8

Respuesta

1

Si está actualizando la página, puede estar creando una nueva sesión y/o sobrescribiendo las variables de la sesión. Debería verificar si una variable de sesión ya está configurada antes de configurarla.

+0

como en put session_start en una instrucción if? – YsoL8

+0

No creo que session_start deba estarlo, pero cualquier sesión de vars que establezca debe ser. –

0

¿Cookies habilitadas? También puede pasar el session_id a través de la solicitud (url).

1

como ha dicho Josh, primero querrá comprobar la existencia de las sesiones antes de comenzar a crear una nueva, use una instrucción if para buscar la variable $ _SESSION, que debería darle los resultados que desea. un truco lil depuración yo uso es para hacer esto:

if($_SESSION) { 
    echo 'session exists'; 
else { 
    echo 'does not exist'; 
} 

De esta manera sé al instante lo bloque de código que se llama, sin preocuparse de qué está contenida en el interior.

Espero que esto ayude :)

Cuestiones relacionadas