Importante: Para ver el vídeo correctamente, recomendamos expandirlo a pantalla completa.
En este tutorial vamos a aprender sobre el manejo de sesiones en PHP. Las sesiones nos permiten almacenar información a lo largo de diferentes páginas, pudiendo acceder a ella en el momento que nosotros queramos. Podemos guardar cierta información la primera vez que el usuario visita la página para luego mostrarla en una visita posterior sin necesidad de interactuar con una base de datos o un archivo externo. Estas sesiones son manejadas por lado del servidor por lo cual no se corre el riesgo de que el usuario las pueda alterar y son utilizadas comúnmente para sistemas de autenticación de usuarios.
En PHP, para manejar sesiones debemos llamar a la siguiente función:
session_start();
Con dicha instrucción, estaremos diciendo que PHP empiece una sesión y nos habilitará el uso de los comandos propios del manejo de la misma. Para este ejemplo, estaremos creando 2 páginas PHP diferentes sin ningún vínculo aparte entre ellas mismas y lograremos pasar información de la primera página a la segunda haciendo uso de las sesiones.
En primer lugar, vamos a crear un archivo llamado “primero.php” en el cual debemos iniciar una sesión. Luego de iniciada la sesión, estaremos registrando una variable sesión de manera manual.
<?php session_start(); //iniciamos el manejo de sesiones $_SESSION["color"] = "rojo"; //creamos una nueva variable de sesión "color" y le damos el valor rojo ?>
En este caso, hemos primero iniciado el manejo de sesiones y luego hemos registrado una variable “color” con el valor “rojo”. Cualquier registro de variable se hace de la forma vista en el código anterior.
Ahora crearemos el segundo archivo llamado “segundo.php” en el cual mostraremos un mensaje dependiendo del valor de la variable de sesion “color”. Además, en caso aquella variable todavía no exista, mostraremos un mensaje indicando que no está registrada la variable. El código es el siguiente:
<?php session_start(); //iniciamos el manejo de sesiones if(isset($_SESSION["color"])) //si la variable de sesion "color" existe, entonces... { echo "El color seleccionado es: " . $_SESSION["color"]; } else //en caso la variable de sesion no exista { echo "La variable color no ha sido declada en la sesión actual"; } ?>
Para probar correctamente el código, debemos primero acceder a la página “primero.php” para que la variable de sesión sea registrada y luego a la página “segundo.php” para poder visualizar el mensaje resultante.