image
Valora:   4.69/5 de 48
Inicio » PHP » Manual de PHP » Sesiones




Ejemplo práctico

Por: Jose Valle

Veamos otro ejemplo que, tal vez, te lo aclare un poco más:

<?php // Manual de PHP de WebEstilo.com

session_register('contador');
echo '<a href="'.$PHP_SELF.'?'.$SID.'">Contador vale: '.++$_SESSION['contador']. '</a>';
?>



Ejecutar ejemplo Ver código fuente

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 es una 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, el valor 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:

<?php // Manual de PHP de WebEstilo.com
session_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>';
?>


Ejecutar ejemplo Ver código fuente

La asignación del nombre de sesión debe realizarse antes que ninguna otra función con sesiones, antes que session_start() o session_register().







Comparte


Aportaciones de usuarios Añadir una aportación
German Pizarro (german.pizarro@alumnos.utfsm.c)08/08/2003

Para ser más genérico debiera considerarse que al deshabilitar register_globals no puede usarse los nombres de las variables sólo como $variable, sino como $_POST[variable].

so!+

Alfonso (lacielsa290@hotmail.com)27/03/2004

$_REQUEST[$misesion] en el ejemplo en lugar de simplemente $misesion en el caso de tener deshabilitado Global en el php.ini
....
Saludos..




 
Valid HTML 4.01!
Última modificación:11 de Mayo de 2009. Spain - España.
© 1998-2004 por . Todos los derechos reservados.