| |||
Basicamente el tema de las sesiones se basa en usar tres ficheros autentificar.php Comprueba que el usuario se identifico bien, si es así se le crea una sesión comprobar_sesion.php Se incluye en todas las páginas que deseas que se accedan únicamente si tiene sesión abierta el visitante. Comprueba que existe sesión, si no es así se le redirecciona a la página de identificación cerrar_sesion.php Evidentemente se encarga de cerrar la sesión por ejemplo al pulsar el usuario un enlace "cerrar" que lleve a esta página. autentificar.php
Código:
comprobar_session.php<? ... //si esta identificado correctamente @session_start(); $_SESSION['id_session'] = @session_id(); ... ?>
Código:
cerrar_sesion.php<? ... if ($_SESSION['id_session] != session_id()) { saltar_a_pagina("identificacion.php"); } ... <?
Código:
<? ... $res = session_destroy(); saltar_a_pagina("adios.php"); ?> |
| |||
kurroman Te faltó usar session_start() en todos esos scripts .. de hecho la validación que haces vía guardar el ID (SID) de sesión en una variable de sesión ya lo hace PHP al usar session_start: si exite (le llega propagado) un SID (Identificador único de sesión) válido .. continua con el (siempre que no esté en proceso de "garbage": expirado) y si no le llega un SID (propagado sea en cookies o por el URL) o no es válido, genera un nuevo SID. Un saludo, |