Foros del Web » Programando para Internet » PHP »

Problema con operador >= al controlar inicio sesion

Estas en el tema de Problema con operador >= al controlar inicio sesion en el foro de PHP en Foros del Web. Buenas, estoy haciendo un script que en caso de inactividad me cierre una sesión, el problema que tengo es que utilizando el operador >= para ...
  #1 (permalink)  
Antiguo 16/05/2008, 15:56
 
Fecha de Ingreso: noviembre-2006
Mensajes: 117
Antigüedad: 17 años, 4 meses
Puntos: 0
Problema con operador >= al controlar inicio sesion

Buenas, estoy haciendo un script que en caso de inactividad me cierre una sesión, el problema que tengo es que utilizando el operador >= para el tiempo me da error, sin embargo si pongo < no. El error que aparece es que en la pagina html donde tengo puesto el include a la funcion me aparece des de el = hacia adelante escrito, como si no lo interpretase...¿saben por que puede ser?

Código 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: ../gestortrivial.php");

else
{
    
//sino, calculamos el tiempo transcurrido
    
$fechaGuardada $_SESSION["ultimoAcceso"];
    
$ahora date("Y-n-j H:i:s");
    
$tiempotranscurrido = (strtotime($ahora)-strtotime($fechaGuardada));
    
//comparamos el tiempo transcurrido
     
if($tiempotranscurrido>=600)             //me impre todo en pantalla des del = (incluido)
     
{
          
//si pasaron 10 minutos o más
          
session_destroy(); // destruyo la sesión
          
header("Location: ../gestortrivial.php"); //envío al usuario a la pag. de autenticación
          //sino, actualizo la fecha de la sesión              
     
}
     else 
     { 
                
$_SESSION["ultimoAcceso"] = $ahora;  
    }
}
?>
Si pongo esto parece que lo hace bien, no me aparece escrito en el html

Código PHP:
  $ahora date("Y-n-j H:i:s");
    
$tiempotranscurrido = (strtotime($ahora)-strtotime($fechaGuardada));

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

Estoy utilizando wampserver version 2.0 (WAMP5). Muchas gracias!!!
  #2 (permalink)  
Antiguo 17/05/2008, 01:27
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Respuesta: Problema con operador >= al controlar inicio sesion

¿Miraste el código fuente?.

Por lo que explicas presiento de ninguna de las dos formas esta siendo interpretado el código PHP (lo deberías ver en el código fuente). La razón seguramente es porque tienes "<?" en lugar de "<?php" al inicio de tu script. Te sugiero siempre ocupes esta forma "completa" pues la otra va a desaparecer y WAMPP estará configurado para este cambio.

Y añadir que incluir esto dentro de otro que genera HTML igual es un error. La función session_start() debe estar antes de cualquier salida (incluyendo espacios en blanco).

Suerte
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #3 (permalink)  
Antiguo 17/05/2008, 04:11
 
Fecha de Ingreso: noviembre-2006
Mensajes: 117
Antigüedad: 17 años, 4 meses
Puntos: 0
Respuesta: Problema con operador >= al controlar inicio sesion

Pues si era eso!! muchiiiiiisimas gracias!! y el codigo lo tengo en un archivo aparte, pero hago el include al principio del html, por lo que será lo primero que se ejecute, antes de cualquier salida. Gracias otra vez!!
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 19:24.