Programacion De Sesiones Con Php

Páginas: 17 (4012 palabras) Publicado: 29 de septiembre de 2012
¿Qué son las sesiones?
Si existe una consulta repetida en las listas de PHP, es la relativa al uso de las sesiones. El uso de sesiones es un método ampliamente extendido en cualquier aplicación de cierta entidad. Básicamente una sesión es la secuencia de páginas que un usuario visita en un sitio web. Desde que entra en nuestro sitio, hasta que lo abandona.
El término sesión en PHP, session eninglés, se aplica a esta secuencia de navegación, para ello crearemos un identificador único que asignamos a cada una de estas sesiones de navegación. A este identificador de sesión se le denomina, comúnmente, como la sesión.
El proceso en cualquier lenguaje de programación podría ser algo así:

Existe una sesión?

Si existe la retomamos
Si no existe creamos una nueva
Generar unidentificador único
Y para que no perdamos el hilo de la navegación del usuario deberemos asociar esta sesión a todas las URLs y acciones de formulario. Podemos también crear un cookie que incluya el identificador de sesión, pero es conveniente recordar que la disponibilidad o no de las cookies depende del usuario, y no es conveniente fiarse de lo que un usuario pueda o no tener habilitado.
Inicializaciónde la sesión
Para utilizar sesiones en PHP lo primero es inicializarlas. Podemos hacerlo explícitamente, mediante la función session_start(), o al registrar una variable en una sesión mediante session_register('miVariable'). En ambos casos se crea una nueva sesión, si no existe, o se retoma la sesión actual. Veamos un sencillo ejemplo:
<?php
session_start();
echo "He inicializado lasesión";
?>

Esta es la forma más básica, si el usuario tiene los cookies activados, PHP habrá insertado de forma automática la sesión y ésta será pasada de una página a otra sin hacer nada más. Desde un punto de vista práctico la sesión es operativa, pero no vemos nada. Podemos obtener la sesión en cualquier momento mediante la función session_id(). Inserta en las sucesivas páginas la siguientelínea para ver si la sesión está disponible:

<?php
session_start();
echo 'La sesión actual es: '.session_id();
?>

En este caso session_start() comprueba en los cookies que existe una sesión y continua con ella, session_id() devuelve el identificador actual.

Ejemplo práctico
Veamos otro ejemplo que, tal vez, te lo aclare un poco más:
<?php
session_register('contador');echo '<a href="'.$PHP_SELF.'?'.$SID.'">Contador vale: '.++$_SESSION['contador']. '</a>';
?>

Como dije anteriormente la sesión se crea o recoge mediante session_start(), o también cuando se registra una variable de sesión mediante session_register().
Si no has utilizado nunca las sesiones, el concepto de variable de sesión, puede resultar un poco abstracto. Básicamente esuna variable, como cualquiera de las que gestiona PHP4, pero que reside en un espacio específico en el servidor, junto con el identificador de sesión, y que pertenece únicamente a un usuario.
En nuestro ejemplo anterior, registramos la variable $contador en la primera línea del script. En la segunda línea, entre otras cosas, cada vez que recarguemos la página o hagamos click sobre el enlace, elvalor de $contador se incrementará en 1.
En esta línea hacemos uso de la variable reservada $PHP_SELF, que hace referencia al propio script en ejecución y una constante propia de PHP4, $SID, que contiene el nombre de la sesión y el identificador de la misma.
Podemos averiguar también el nombre de la sesión, o modificarlo, mediante la función session_name(). Veamos una prueba práctica:
<?phpsession_name('misesion');
session_register('contador');
echo '<a href="'.$PHP_SELF.'?'.SID.'">Contador vale: '.++$_SESSION['contador'].'</a><br>';
echo 'Ahora el nombre es '.session_name().' y la sesión '.$misesion.'<br>';
?>
La asignación del nombre de sesión debe realizarse antes que ninguna otra función con sesiones, antes que session_start() o...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Programación PHP
  • programacion php
  • Programacion php
  • Programación en php
  • programacion PHP
  • Programación Php
  • PROGRAMACION CON PHP
  • programacion de php

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS