Foros del Web » Programando para Internet » PHP »

Ayuda urgente con autenicacion

Estas en el tema de Ayuda urgente con autenicacion en el foro de PHP en Foros del Web. que onda mis amigos foreros aqui les envio un detalle que no me deja dormir.. Resulta que me enviaron un script para autenticar usuarios y ...
  #1 (permalink)  
Antiguo 03/03/2006, 13:22
 
Fecha de Ingreso: marzo-2006
Mensajes: 17
Antigüedad: 18 años, 1 mes
Puntos: 0
Ayuda urgente con autenicacion

que onda mis amigos foreros

aqui les envio un detalle que no me deja dormir..

Resulta que me enviaron un script para autenticar usuarios y que puedan accesar a una pagina determinada, de igual manera que la sesion de los usuarios sea de 60 minuos, esto significa que se cierre la ventana o deje el usuario de ver ese contenido al temino de esos 6 minutos.

El script es este:

-----------------------------------------------------------------
archivo 1.- llamado passwords.php
-----------------------------------------------------------------
<?
//vemos si el usuario y contraseña es váildo
if ($_POST["usuario"]=="miguel" && $_POST["password"]=="miguel"){
setcookie("visitas", "1", time() + 60);
//usuario y contraseña válidos
session_name("loginUsuario");
//asigno un nombre a la sesión para poder guardar diferentes datos
session_start();
// inicio la sesión
$_SESSION["autentificado"]= "SI";
//defino la sesión que demuestra que el usuario está autorizado
$_SESSION["ultimoAcceso"]= date("Y-n-j H:i:s");
//defino la fecha y hora de inicio de sesión en formato aaaa-mm-dd hh:mm:ss
header ("Location: aplicacion.php");
if ($_SESSION["autentificado"]= "SI")
{
header ("Location: documento.htm");
}else {
//si no existe le mando otra vez a la portada
header("Location: login.htm");
}
}
?>

-------------------------------------------------------------
luego, tengo el archivo aplicacion.php
-------------------------------------------------------------

<?
//iniciamos la sesión
session_name("loginUsuario");
session_start();

//antes de hacer los cálculos, compruebo que el usuario está logueado
//utilizamos el mismo script que antes
if ($_SESSION["autentificado"] != "SI") {
//si no está logueado lo envío a la página de autentificación
header("Location: login.htm");
} else {
//sino, calculamos el tiempo transcurrido
$fechaGuardada = $_SESSION["ultimoAcceso"];
$ahora = date("Y-n-j H:i:s");
$tiempo_transcurrido = (strtotime($ahora)-strtotime($fechaGuardada));

//comparamos el tiempo transcurrido
if($tiempo_transcurrido >= 60) {
//si pasaron 10 minutos o más
session_destroy(); // destruyo la sesión
header("Location: sesionend.htm");
//envío al usuario a la pag. de autenticación
//sino, actualizo la fecha de la sesión
}else {
$_SESSION["ultimoAcceso"] = $ahora;
}
}
?>

Todo funciona bien al momento de autenticar el usuario, me redirecciona a la pagina que se debe ver,, pero la sesion continua por horas... no respeta el tiempo de sesion que le estoy dando, y el usuario puede seir explorando la pagina.
que puede estar pasando.. cabe mensionar que no tengo ningun script en mi pagina " documento.htm "

Espero podeis ayudarme..

un cordial saludo a todos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:03.