Ver Mensaje Individual
  #4 (permalink)  
Antiguo 05/07/2006, 06:32
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 18 años, 2 meses
Puntos: 129
Cita:
el problema es ke no hace nada ni error ni nada de nada..loke me fije es ke la variable en $_SESSION["autentificado"] en mipaginasegura.php no tiene valor por eso se va a index.php...
-por que no tiene valor ?, que me falto por hacer ?, asi no se usa en php 5?..
Deberías asegurarte como propagas el SID (Identificador único de sesión) .. Si no lo especificas ni sabes que es dicho término entonces "asumes" que propagas el SID en cookies, por ende dependes de que tu navegador acepte dichas cookies y que PHP esté configurado para propagar el SID en cookies .. pues si lo haces por el URL (forzado en configuración de PHP) PHP no va a insertar el SID en redireccionamientos como los que hacer por header() de tipo "Location".

Revisa tu configuración de PHP:

Para propagar el SID en cookies debes usar:
session.use_trans_sid = OFF
session.use_cookies = ON
session.use_only_cookies = ON

También revisar donde PHP genera los archivos de sesiones:
session.save_path = un directorio de tu servidor que exista y tenga permisos de escritura.

Del lado del "cliente" debes revisar:
1) tu navegador que acepte cookies (el "nivel de seguridad" de navegadores como IE afectan a que tipo de cookies se aceptan .. revisalo).
2) que ningún antivirus, firewall, proxy u otro tipo de software esté bloqueando esas cookies.

En general lo que pretendo hacer incapié con mi respuesta es que se -DEBE- saber como PHP hace la "magia" para que las sesiones funcionen .. principalmente por qué se ha de "propagar" un "dato" (el SID) para que PHP sepa que "sesión" y que "cliente" (navegador) está usandola .. esa "relación" cliente-servidor para la sesión lo hace por médio del nunca bien ponderado: SID .. Si ese dato no se consigue hacer llegar a un script (por el URL propagado o en una COOKIE) que use sesiones (por eso usamos "session_Start()" para indicar que pretendemos acceder a variables de sesión en ese código/Script), los datos de la sesión "aparentemente" se pierden .. pero lo que realmente se ha perdido no son los datos que siguen estando en el servidor por el tiempo de vida que duren (que define session.gc_maxtimelife directiva de php.ini al respecto) .. lo que se "pierde" es el SID. PHP en un script al usar "session_Start()" lo que hace es "buscar" ese SID en una cookie o en el URL .. si no lo encuentra: genera otro SID (otra sesión) ..

Espero que quede claro el tema .. es parte fundamental del uso de sesiones conocer estos conceptos para "saber" por qué en "tales condiciones" funcionan las sesiones y otras no. Tanto para echarle la culpa al "servidor" (PHP y su configuración) como al "cliente" (navegador y configuración sobre todo a nivel de cookies).

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