Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/04/2004, 08:56
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
dobeto .. eso es altamente peligroso!!!!

Así puedo empezar a probar ID de sesión (es cierto que tal vez no dé ni con uno válido) pero, .. me das la posibilidad con la asignación del ID de sesión de una variabel externa a que lo haga ..

-----

mmtaffarel

El SID es una constante .. así que va sin $ delante si quieres usarlo. O bien lo puedes componer con:

Código PHP:
$sid=session_name()."=".session_id(); 
así tomas el nombre de la sesión (que lo tiene y podrías hasta definirlo tu para tus própias aplicaciones) y el ID de sesión que todo junto compone el "SID" (Identificador único de sesión).

El SID se puede progagar de 2 formas:

Por el URL o por cookies.

Por el URL a su vez puede ser propagado "manualmente" o automático (por parte de PHP).

Esto lo define la directiva (php.ini):
session.use_trans_sid = 1 (a 1 lo hará PHP automático).

El hecho de que lo haga automático implica que PHP reescribe ciertos tags HTML para propagarle ahí el SID .. por ejemplo en links, en formularios (crea campo hidden) y otros.

NO lo hace de forma automática en redireccionamientos tipo header("Location....") ni en javacript (window.open, window.location .. etc) ni en etiquetas <meta> de refresh ... (y en frames no recuerdo ahora ..) Las etiquetas HTML que reescribe PHP si usas session.use_trans_sid = 1 las define otra directiva (url_rewrite_tangs o algo así .. ).

Si quires propagar el SID en cookeis (sólo el identificador . los datos de la sesión siguen en el servidor) tan sólo tienes que activar:
session.use_cookies=1 y/o session.use_only_cookeis = 1

Y tener un navegador que acepte cookies. (a su vez podrías desactivar la anterior directiva).

Dependiendo de esa configuración .. de sesiones, así tendrás que trabajar o podrás trabajar con sesiones. Es importantiiiiisiiiimoooo conocerla antes de tocar algo de sesiones.

Por lo demás .. la mejor manera de comprobar si funcionan las sesiones es creando una variable de sesión y leyendola en otro script .. por qué todas esas variables dependen del SID y de que si es el mismo que se propagó o no.

nose.php
Código PHP:
<?
session_start
();
$_SESSION['variable']="valor";
echo 
"<a href=\"sesion.php?".SID."\">click</a>";
?>
sesion.php
Código PHP:
<?
session_start
();
echo 
$_SESSION['variable'];
?>
Y luego si quires (si propagas el SID en cookies) .. quitale el SID al link que pasa a tu sesion.php y observa.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.

Última edición por Cluster; 21/04/2004 a las 08:58