Cita:
Iniciado por Stickmaster2004 bueno, he escuchado mucho de que las cookies al lado del cliente son un problema por que en general bueno este no puede tener habilitada las cookies, tambien se considera que si se utiliza php hay que configurar el php.ini, pero......., no hay una forma eficaz y sencilla de decirle en php, bueno que a los 5 minutos bueno le cierra la sesion y a cualquier accion en la pagina lo lleve a la pagina donde aparece el nombre de usuario y contraseña???.
eso es todo.
Bueno .. creo que el problema de la habilitación de cookies o no depende del usuario. Se que todo el mundo no está al mismo nivel .. que no todos leen al respecto .. otros se ven "Alarmados" por gente que anda como la "inquisición" definiendo a la cookie como el "enemigo público n°1" cuando esto pasa por un tema de -saber- quien me pide crear una cookie en mi equipo y así autorizarla o no según de donde provenga.
NO es problema de seguridad como hace PHP en propagar en ella el SID (no los datos que están en el servidor .. sólo se propaga la "referencia" que hace en el servidor a esos datos).
De hecho en el documento (PDF) que menciono en mi anterior mensaje se exponen los problemas de propagar el SID en el URL (para no depender de que el cliente acepte cookies o no ).
Cita: tambien se considera que si se utiliza php hay que configurar el php.ini,
Es ahí donde se define principalmente como quieres propagar el SID .. tu decides escuchando los "pros" y los "contras" de uno u otro método. Alguna de esta configuración se puede hacer también en tiempo de ejecución via: ini_set() función.
Cita: no hay una forma eficaz y sencilla de decirle en php, bueno que a los 5 minutos bueno le cierra la sesion y a cualquier accion en la pagina lo lleve a la pagina donde aparece el nombre de usuario y contraseña???.
Esto PHP no lo hace por tí con una simple función o configuración. PHP gestiona las sesiones en forma general, no individual: tiempos de expiración .. etc. Es tu aplicación la que "definirá" como ha de tratar una "sesión" .. en algunos casos te interesará cerrar cualquier sesión creada a cierto tiempo . .en otros no, tambien te interesará "matar" una sesión tal vez "selectivamente" o definir un tiempo de vida de cada sesión en forma individual .. bueno, la mayoría de estas cosas PHP y sus sistema de sesiones clásico no lo implementa, pero si que tienes soluciones que sustituyen en parte a lo que PHP no hace o poco implementa al respecto como por ejemplo:
ADOdb
http://phplens.com/lens/adodb/docs-session.htm
(no es el único .. pero si tal vez el más completo al respecto).
Una vez que soluciones el tema de la "caducidad" de tu variable de sesión .. el tema de "redireccionar" si expiró lo haces con un simple:
Código PHP:
session_start();
if (empty($_SESSION['alguna_variable'])){
header ("Location: login.php");
exit;
}
(pero antes .. debes tener resuelto el tiempo de expiración de tu sesión en curso .. ya sea que lo hagas como PHP lo hace o por otro médio como usando alguna classe/aplicación tipo ADOdb ... o código própio)
Un saludo,