Manual de PHP: Sesiones
De Foros del Web
Cuando un usuario visita una aplicación o sitio Web programado en PHP regularmente navega en distintas partes y páginas del sitio las cuales pueden tener relación entre ellas, por ejemplo si tenemos una tienda en línea queremos saber cuando un usuario ingresa, naevga por los productos y al final se registra y agrega productos al carrito de compras.
El reto es identificar a ese usuario como único en toda la aplicación y verificar en cada página que visita qué privilegios tiene o qué configuraciones ha modificado para presentarle la información correcta, para esto utilizamos lo que se llaman Sesiones (Sessions).
Contenido |
Cómo funcionan las sesiones
Y sabemos que con PHP podemos enviar variables a través de las URLs tal como hemos visto en los formularios, pero tendríamos que estar enviando esta información constantemente a través de todas las URLs o páginas que visite el usuario, y por otro lado también podemos leer y almacenardatos en las cookies sin embargo el soporte de éstas no está activada en todos los navegadores o algunos usuarios las desactivan, por eso utilizamos las Sesiones.
Lo que hacemos es asignar un identificador único a cada usuario que nos visita y guardar ciertos valores que vamos a utilizar durante toda su visita para acceder a ellos en cualquier momento que los necesitemos sin necesidad de estar declarándolos en cada página que ingrese.
Duración de las sesiones
Las sesiones se inician o abren cuando un usuario visita un sitio, permanece activa durante toda esa visita y se cierra al cerrar la ventana o pestaña del navegador con dicho sitio.
Funciones para el manejo de sesiones
- session_start — Inicializar los datos de una sesión
- session_destroy — Destruye todos los datos guardados en una sesión
- session_register(nombre) — Registrar una o más variables globales con la sesión actual
- session_unregister(nombre) — Desregistrar una variable de la sesión actual
- session_is_registered(nombre) — Comprueba si una variable está registrada en la sesión
- session_cache_expire — Devuelve la caducidad actual del caché
- session_cache_limiter — Lee y/o cambia el limitador del caché actual
- session_commit — Alias of session_write_close
- session_decode — Decodifica los datos de una sesión a partir de una cadena
- session_encode — Codifica los datos de la sesión actual en una cadena
- session_get_cookie_params — Obtiene los parámetros de la cookie de la sesión
- session_id — Lee y/o cambia el session id actual
- session_is_registered — Comprueba si una variable está registrada en la sesión
- session_module_name — Lee y/o cambia el módulo de la sesión actual
- session_name — Lee y/o cambia el nombre de la sesión actual
- session_regenerate_id — Actualizar el id de sesión actual con una recién generada
- session_save_path — Lee y/o cambia la ruta donde se guardan los datos de la sesión actual
- session_set_cookie_params — Cambia los parámetros de la cookie de la sesión
- session_set_save_handler — Establece unas funciones para el almacenamiento de los datos de la sesión a nivel de usuario
- session_unset — Elimina todas las variables de la sesión
- session_write_close — Escribe los datos de la sesión y la finaliza
