Problemática de HTTP
Se ha dicho anteriormente que las peticiones y respuestas entre cliente y servidor son a través del protocolo HTTP. Uno de los inconvenientes de éste protocolo es que no guarda estados, sobre conexiones anteriores. Por lo que no puede identificarse quién solicita respuestas del servidor.
Es por esto que se necesita el uso de sesiones, con las cuales se guarde información importante a través de la aplicación web. Esta información es guardada de forma temporal hasta que la misma ya no es necesaria.
PHP maneja el uso de sesiones, lo cual veremos a continuación.
Abrir una Sesión
Lo primero que se debe realizar para manejar sesiones en PHP, es abrir una sesión. Esto se realiza con la función session_start()
. Esto se debe realizar con cada página donde se desea mantener la información.
Lectura de Datos de Sesión
El arreglo global $_SESSION
, permite guardar la información, como un arreglo asociativo, similar a los vistos anteriormente.
Es importante indicar que los valores guardados en dicho arreglo solo pueden ser leídos si la sesión está activa, y esto se logra con el session_start()
.
Cerrar una Sesión
Una vez que ya no es necesaria la sesión, se debe cerrar. Para hacer esto de forma completa se debe hacer lo siguiente:
- Mantener la sesión activa utilizando
session_start()
. - Luego, destruir la información almacenada en el arreglo
$_SESSION
, utilizando la funciónsession_unset()
. - Destruir la sesión utilizando
session_destroy()
.
Referencias
http://php.net/manual/en/book.session.php
http://www.w3schools.com/php/php_sessions.asp