Ver Mensaje Individual
  #7 (permalink)  
Antiguo 16/05/2006, 15:15
romansg
 
Fecha de Ingreso: mayo-2004
Mensajes: 34
Antigüedad: 19 años, 10 meses
Puntos: 1
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