Php sessiones

Solo disponible en BuenasTareas
  • Páginas : 5 (1019 palabras )
  • Descarga(s) : 55
  • Publicado : 23 de mayo de 2010
Leer documento completo
Vista previa del texto
Introducción a las sesiones en PHP
Una sesión en el entorno del desarrollo web consiste en controlar el acceso individual a una página o grupo de páginas determinado, mediante la asignación de un identificador de único para cada usuario. Con ello se puede conseguir hacer un seguimiento de cada usuario a lo largo de su visita en nuestra página web, desde que entra hasta quesale. PHP consigue con el apoyo de las sesiones construir páginas más personalizadas conservando dentro del objeto $_SESSION de PHP el estado de las acciones realizadas por el usuario (de dónde viene, por dónde ha pasado..).

Por ejemplo, en una tienda virtual cuando el usuario va a pagar definitivamente el pedido, la página deberá "recordar" qué productos ha seleccionadopreviamente. Para esto se utilizan las sesiones, para identificar a un usuario y pasar datos asociados a él entre las distintas páginas. En el caso de la tienda, el listado de productos se guardaría en el objeto $_SESSION asociados a un identificador.

Otro uso muy frecuente de las sesiones es la autentificación en páginas restringidas mediante usuario y password. MediantePHP hay que comprobar que los datos introducidos por el usuario en el formulario de autentificación son válidos en la base de datos, y si es así iniciar una sesión guardándolos en el objeto $_SESSION. En cada página que se quiera restringir el acceso deberá haber una comprobación de si existen las variables de sesión y si éstas coinciden con algún registro de la base de datos. En caso contrarioel usuario no es válido y deberá identificarse de nuevo.

Es imprescindible para el uso de sesiones que el usuario acepte las cookies. De lo contrario el identificador de sesión deberá pasarse como parámetro GET en las URL. Para ello se debe utilizar la constante SID o la función session_id().

Las sesiones se utilizan fácilmente en PHP, algunasfunciones relacionadas con el uso de las sesiones son:

Para iniciar la sesión (crear una nueva o continuarla), disponemos de la función session_start().
Esta función siempre devuelve TRUE.
bool session_start ( void )

Para registrar variables utilizamos:
session_register(), acepta como argumentouna cadena que identifique el nombre de una variable, o una matriz que contenga más identificadores de variables.
bool session_register ( )

Para destruir los datos asociados a la sesión actual, hay que utilizar session_destroy().
Hay que tener en cuenta que no destruye ninguna de las variables globales asociadas a la sesión ni lacookie. Esta función devuelve TRUE si se destruye la sesión correctamente y FALSE se produce algún problema al intentarlo.
bool session_destroy ( void )

Para eliminar alguna variable registrada se utiliza session_unregister(). Se le pasa como parámetro el nombre de la variable.
bool session_unregister()

Otrasfunciones relacionadas con sesiones en PHP son:

• string session_id (): Lee o cambia el identificador de sesión actual.
• void session_unset ( ): Elimina toda las variables de la sesión.
• bool session_is_registered(): Comprueba si una variable está registrada en la sesión.
• stringsession_save_path(): Lee o cambia la ruta donde se guardan los datos de la sesión actual. Hay que configurar el save_path para que no de error en php.ini
• string session_module_name (): Lee y/o cambia el módulo de la sesión actual
• bool session_set_save_handler(): Establece unas funciones para el almacenamiento de los datos de la sesión a nivel de usuario....
tracking img