Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/05/2013, 13:12
Amiancht
 
Fecha de Ingreso: mayo-2013
Mensajes: 169
Antigüedad: 11 años
Puntos: 25
Pregunta Una sesión por cada aplicación

Hola a todos.
«Decir que este es mi primer mensaje en el foro, y si cometo algún error espero que me lo perdonen.»

Bueno, mi gran duda proviene con las sesiones. Su funcionamiento básico lo entiendo bastante bien. Pero cuando tengo varias aplicaciones creadas en un mismo sitio web, ya me empiezan a dar quebraderos de cabeza.

Para iniciar una sesión y variables de las mismas hago esto:

Código PHP:
session_start();
$_SESSION[login] = true
Para cerrar las sesion:
Código PHP:
session_start();
session_destroy(); 
Pero claro, si hago un session_destroy() con una aplicación web entonces se cierra toda la sesión, para todas las aplicaciones webs que tenga en el sitio.

Es decir, lo que quiero es tener varias aplicaciones webs independientes en un mismo sitio web, y que no me generen conflictos entre ellas. Así que si cierro una sesión de una de la aplicaciones, no se cierren para todas.

Y claro, como cuando yo programo una nueva aplicación en php suelo seguir una misma estructura y mismos nombres de variables. Y así economizar codigo. Quiero poder usar un mismo nombre de variable en diferentes aplicaciones, sin que ninguna otra aplicación acceda a la variable de sesion de la otra. Como a continuación hago.

script: aplicacion1.php
Código PHP:
session_start();
$_SESSION[login] = true;
$_SESSION[user] = "resultado de consulta de la Base de datos aplicacion_1"
script: aplicacion2.php
Código PHP:
session_start();
$_SESSION[login] = true;
$_SESSION[user] = "resultado de consulta de la Base de datos aplicacion_2"
Como ven quiero dos aplicaciones que aunque tengan la misma estructura, no quiero que compartan la misma sesión. No quiero iniciar sesión en una y se inicien automaticamente sesión en la otra. Y lo mismo no quiero destruir la sesion en una y se destruya en las demás.

¿Cómo puedo hacer una sesión determinada para cada aplicación en el mismo servidor?

He estado mirando la función session_name() pero no comprendo su uso. Ni tampoco consigo concebir si esta función es la solución a mi problema.

PD: Ya he buscado en San Google, y en el buscador de este foro, pero las respuestas dadas en dichos temas, no me convencen, o no son lo suficiente claras, o simplemente no es exactamente lo que busco.

De antemanos, muchas gracias.
Un cordial saludo,

Amiancht