Skip to content

2 Estado. SESIONES

UD 5 2. SESIONES

RA 4 "Desarrolla aplicaciones Web embebidas en lenguajes de marcas analizando e incorporando funcionalidades según especificaciones.

  • b) Se han utilizado sesiones para mantener el estado de las aplicaciones Web.

Introducción

HTTP es un protocolo sin estado (stateless) , lo que significa que cada vez que un navegador solicita una página web, el servidor no recuerda nada de las visitas anteriores. Por ejemplo, si visitas una tienda online y agregas un producto al carrito, en la siguiente página el servidor no "sabe" que ya habías añadido algo al carrito. Esto hace que sea difícil mantener una experiencia continua para el usuario.

Iconos Login Vectores, Iconos, Gráficos y Fondos para Descargar Gratis

¿Qué significa que HTTP sea "stateless" y cómo lo soluciona PHP?

Para "simular" ese estado y recordar la información , se utilizan varios mecanismos, como:

  1. Cookies : Son pequeños archivos que se almacenan en el navegador del usuario y contienen información que el servidor puede usar en futuras visitas.

Ejemplo : Una cookie podría almacenar tu idioma preferido para que cada vez que visites una página, esta se muestre automáticamente en ese idioma. 2. Tokens : Son cadenas únicas que permiten autenticar a un usuario en cada petición, sin necesidad de volver a iniciar sesión cada vez. 3. Sesiones en PHP : Una sesión es un mecanismo que guarda información temporalmente en el servidor. PHP crea una cookie en el navegador para identificar al usuario, pero la información real se almacena en el servidor . Ejemplo práctico :

  • Sin sesión : Si el usuario añade un producto al carrito y cambia de página, el servidor "olvida" el carrito.
  • Con sesión : Al iniciar una sesión, PHP guarda el contenido del carrito en el servidor, y aunque el usuario navegue a otra página, el carrito seguirá ahí.

Cómo funciona en PHP :

Cuando inicias una sesión con session_start(), PHP envía una cookie al navegador con un identificador único (por ejemplo, PHPSESSID=123abc). Esta cookie permite al servidor "reconocer" al usuario y acceder a la información almacenada en la sesión, como productos en un carrito de compra, datos de usuario, etc.

1732771773455

Código de ejemplo para gestionar una sesión en PHP :

// Iniciar sesión
session_start();

// Almacenar un dato en la sesión (por ejemplo, el nombre del usuario)
$_SESSION['usuario'] = 'Carlos';

// Recuperar el dato almacenado
echo "Bienvenido, " . $_SESSION['usuario'];

// El servidor recuerda al usuario mientras dure la sesión.

En este caso, aunque el usuario cambie de página, el servidor seguirá sabiendo que se llama "Carlos" gracias a la sesión activa.

Si chequeas en las opciones de desarrollador, lo encontrarás:

1732771907159

Actividad "UD5/2 Sesiones"

Creando Scripts con sesiones

Como es habitual, creamos nuestra carpeta dentro de la unidad para probar los ejemplos propuestos y, como buen desarrollador, los ejemplos que nuestracuriosidad nos haga investigar