Hola, gracias por responder. En mi caso diferencio las aplicaciones simplemente con subdirectorios. Una pequeña prueba:
www/sistema_a/indice.php Código PHP:
<?
session_start();
if (!isset($_SESSION['contador']))
{
$_SESSION['contador'] = 1;
}
else
{
$_SESSION['contador']++;
}
echo $_SESSION['contador'];
?>
www/sistema_b/indice.php Código PHP:
<?
session_start();
if (!isset($_SESSION['contador']))
{
$_SESSION['contador'] = 1;
}
else
{
$_SESSION['contador']++;
}
echo $_SESSION['contador'];
?>
Puesto así, los contadores se mezclan uno con el otro. Añadiendo
session_name('sistema_a') y session_name('sistema_b')
respectivamente, se obtienen contadores independientes. Esto último sucede incluso si ambos archivos se encuentran en el mismo directorio.
No sé si esto pueda considerarse una prueba concluyente pero, al menos en apariencia, tenemos que
Cita: pasando el session_id por cookies y diferenciando por medio de subdirectorios, el uso de session_name permite distinguir varias aplicaciones.
Supongo que otra forma de mantener independientes la información de sesiones entre una y otra aplicación sería acostumbrarnos a poner toda la información en un arreglo:
Código PHP:
$_SESSION['nombre_del_sistema'] = array();
esto es, en lugar de tener
Código PHP:
$_SESSION['usuario'] = 'romansg';
$_SESSION['ultima_visita'] = 'ayer';
$_SESSION['proxima_visita'] = 'mañana';
etc.
guardar
Código PHP:
$_SESSION['nombre_del_sistema']['usuario'] = 'romansg';
$_SESSION['nombre_del_sistema']['ultima_visita'] = 'ayer';
$_SESSION['nombre_del_sistema']['proxima_visita'] = 'mañana';
etc.
Saludos