Ver Mensaje Individual
  #10 (permalink)  
Antiguo 17/05/2004, 11:59
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Bueno .. yo no me complico con el SID .. dejo a PHP que lo propage en cookies (session.use_cookies = 1 o mejor todavía: session.use_only_cookies =1) y desactivo session.use_trans_sid =0

Esto me obliga (a mi y a mis "usuarios") a disponer de un navegador que acepte cookies .. pero gano en seguridad al no propagar el SID en link que "podrían" salir fuera de mi sitio (ejemplo . .un link que pones en un chat .. que envias por e-mail .. etc).

Si propagas el SID de forma manual (no por cookies) .. si en algún punto "te dejas" el SID sin propagarlo (ejemplo en esas páginas que no requieres del uso de esas variables de sesión) .. vas a perder el SID si pretendes volver a las páginas que si lo requieren (de uso de sesiones). Por ende .. el SID debes propagarlo siempre (sea manualmente como lo haces o dejando a PHP que lo haga en una cookie y olvidarte del SID) y . .ya validaras el estado o existencia de alguna variable de sesión en las pàrtes o páginas completas que lo requieran en función del valor o existencia de alguna de esas variables que viajan en tu sesión.

Este tipo de validaciones ..
if (($_SESSION['masterlogin']==true or session_id()==$id) AND isset($_SESSION['name'])){

las puedes resumir en:
Código PHP:
if (isset($_SESSION['masterlogin'])){
// sesión válida ..

El SID es único para cada cliente que la inicia .. así que no me preocupo de ver otras variables de sesión . .SI se crearon "asumo" que pasó mi validación anterior .. Y sigue usando el mismo SID que inició mi primer session_start() que inició en alguna de las páginas de mi sitio (o tras autentificarse).

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