28/08/2005, 14:19
|
O_O | | Fecha de Ingreso: enero-2002 Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses Puntos: 129 | |
Cuando hablan de "que la sesión se pasa automáticamente" .. en realidad lo que debemos conocer es que PHP y el uso de sesiones puede propaga el SID de dos formas:
1) Por el URL
2) Por cookies
y dentro de estas dos grandes formas de propagar el SID .. hay que conocer que: session.use_trans_sid a ON .. propagará el SID re-escribiendo ciertos tag's HTML para incrustrar en el el SID .. com por ejemplo en un link HTML (<a href= ...>) y algunos más. No lo hace automáticamente con redireccionamientos o recargas de página vía javascrip ni por cabeceras .. tampoco por un header() de tipo "Location: ....".
Si queremos propaga el SID en cookies (que creará PHP ..) podemos usar: session.use_cookies o mejor todavía session.use_only_cookies a ON. En ese caso .. no se van a sobre-escribir ningún tag HTML para incrustrar el SID .. sino que ese SID va a viajar en la cookie que PHP va a crear en el cliente (navegador/PC usuario) .. (y sólo el SID .. no los -datos-), por ende en este modo, el cliente (navegador) ha de aceptar cookies. De esta forma .. sólo debemos preocuparnos que se acepte dicha cookie .. en el código no hay que hacer mención para nada a SID.
A todo esto .. para que PHP use y continue el uso de una sesión iniciada .. se ha de indicar expresamente en todo script vía:
session_Start() antes de cualquier acceso a $_SESSION ya sea para crear una variable en ella u obtener un valor de alguna.
Un saludo, |