Arreglos en PHP

Sesiones en PHP

¿Que es una variable de sesion en php?

sesiones curso de php

El manejo de sesiones es un concepto muy importante en PHP que permite que la información de usuario persista entre todas las páginas de un sitio web o app. Aquí aprenderás los fundamentos necesarios para que puedas manejar sesiones en PHP.

Comencemos con una explicación del uso básico funcional de las sesiones y cómo estas están relacionadas con las cookies (las cookies las explicaremos a detalle en otro articulo ya que se extendería y se podría hacer tedioso la lectura de las sesiones en php). Después daremos un vistazo a varios fragmentos de código que demuestran cómo trabajar con sesiones. Aprenderás a crear y destruir sesiones, y a cambiar variables de sesión así como su contenido.

Al principio, la única manera de enviar información de una página a otra es a través de un formulario y se trata de la información que ha introducido el usuario en dicho formulario. Como mucho podemos enviar información adicional mediante controles ocultos, los famosos hidden, o podemos "imitar" a un formulario redirigiendo a otra página enviando información en la dirección, pero esto no puede considerarse compartir información, puesto que la página que recibe la información no puede saber si la información ha sido manipulada por el camino ni quién se la envía. Solo estas eran las formas en las que podiamos compartir información dentro de un sistema realizado en PHP.

Las sesiones son una forma sencilla de almacenar datos para usuarios de manera individual usando un ID de sesión único. Esto se puede usar para hacer persistente la información de estado entre peticiones de páginas. Los ID de sesiones normalmente son enviados al navegador mediante cookies de sesión, y el ID se usa para recuperar los datos de sesión existente. La ausencia de un ID o una cookie de sesión permite saber a PHP para crear una nueva sesión y generar un nuevo ID de sesión.

Por compartir información nos estamos refiriendo a utilizar variables comunes en programas distintos, sin que la información salga del servidor, Regularmente se usan estas sesiones para almacenar información que se puede utilizar en todo el sistema, por ejemplo:

Lo cierto es que más recomendable tomar una preparación presencial para poder entender mejor estos temas, te recomendamos 100% este curso de php.

crear sesion en php

Crear la sesión

En PHP, las sesiones se crean mediante la función session_start(), esta instrucción es recomendable siempre ponerla hasta el principio de todo codigo php, esto con la finalidad de que las tengas disponibles en el momento que lo requieras. Si no existe la sesión, esta función crea la sesión y le asocia un identificador de sesión único a cada usuario que se conecte a sistema, esto quiere decir que si se conectan al mismo tiempo 500 usuarios, esta función creara 500 Id´s diferentes para cada uno de ellos. Si la sesión ya existía, esta función permite que la página tenga acceso a la información vinculada a la sesión, pero unicamente a la información que se halla almacenado a dicha sesión, nos referimos a que no podría acceder a la información de otro usuario. Es decir, todas las páginas que quieran guardar datos en $_SESSION o leer datos de $_SESSION deben comenzar con la función session_start().

seguridad en php

Seguridad en las sesiones

A pesar de su simplicidad, muchas personas creen que no son seguras utilizarlas pero hay en determinadas ocasiones que el uso de sesiones puede salir mal. En esta sección se muestran algunas técnicas sencillas para evitar riesgos con las sesiones:

Sessión Time-Outs

Establecer un tiempo de vida a las sesiones es algo importante para lidiar con las sesiones de usuarios en aplicaciones. Si un usuario inicia sesión en un lugar y se olvida de cerrarla, otros pueden continuar con la misma, por eso es mejor establecer un tiempo máximo de sesión, el tiempo máximo que se puede mantener una sesión abierta es de 30 minutos, sin embargo es recomendable establecer un tiempo limite de sesión o incluso cerrar la sesión, actualmente la seguridad de la información de cada empresa depende de los mismos empleados ya que el robo de información casi siempre esta al mal uso de los mismos empleados, ustedes como programadores deben hacer lo posible por que el usuario que accede al sistema si es necesario iniciar sesión cada 3 minutos, pero esto dependerá de las politicas y las necesidades de cada sistéma informático a realizar.

crear una sesion en php

Trabajo de sesiones tiene tres partes:

Creación o apertura de la sesión

Cuando alguna página crea una sesión utilizando la función correspondiente, el servidor asocia al navegador del usuario un identificador de usuario único, como ya se menciono anteriormente. El identificador se guarda en el usuario en forma de cookie o se puede almacenar en alguna variable todo dependerá del uso que le puede dar a dica variable, si el navegador del usuario no permite la creación de cookies, añadiendo el identificador en la dirección de la página; las cookies y las sesiones van de la mano y al crear una sesion en automatico PHP genera una cookie, debemos tener cuidado ya que si el navegador no puede almacenar cookies podría tener errores al crear dicha sesión.

necesitas una pagina web

Utilización de la sesión

Si ya se ha creado la sesión, las páginas solicitadas por el mismo navegador pueden guardar y recuperar información en el servidor, información que se asocia al identificador de usuario, por lo que no es accesible a otros usuarios. La información se conserva hasta que el usuario o el servidor destruyan la sesión, pueden acceder a toda la información de la sesión, incluso pueden agregar nuevas variables, modificar dichas información de las sesiónes o eliminar la información y dejarlas vacias.

Destrucción o cierre de la sesión

Tanto el usuario como el servidor pueden cerrar la sesión. El usuario puede destruir la sesión cerrando el navegador. El servidor puede destruir la sesión cuando alguna página utilice la función correspondiente o al cabo de un tiempo determinado (definido mediante la función session_set_cookie_params()).

Incluso con esta información también es posible obtener cierta información del usuario para poderlo hackear pero esta información no pertenece a este artículo ya que el objetivo de estos cursos de php es que puedan obtener los conocimientos del lenguaje para que puedan aplicarlos en el ambito labral y no con el objetivo de llegar a robar información de los clientes que se puedan conectar, es va más alla de este objetivo, esperando les este ayudando a su aprendizaje.

Por el momento, puedes tomar nuestro curso de Excel. Si te interesa la programación, puedes tomar nuestro curso de java o el curso de python.

Articulos Relacionados a la tecnología Java

Seguridad de Java Java para Android Applets Java Juegos en Java Web Services Java Servidor Java Java 8 Fundamentos de Java 8 Java 3D
Curso de Java

Diseño Web Grupo Codesi