Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/02/2015, 21:20
plitre_sys19
 
Fecha de Ingreso: septiembre-2011
Mensajes: 233
Antigüedad: 12 años, 7 meses
Puntos: 1
Respuesta: Mostrar alerta cuando falte 20 segundo para cerrar la sesión

Hola informacionsys y marcusaurelio gracias por responderme, estuve adaptando el código a mi proyecto pero tengo un problema que siempre se actualiza la variable la variable de sesión timeout, este es el código que tengo:
sesion.php
Código PHP:
<?php
    $respuesta
=2;
    
$mensajeError="No se puede ejecutar la aplicación";
    
session_start();
    
// establecemos el tiempo de espera en segundos
    
$inactivo 60;
    if (isset(
$_SESSION["timeout"])) 
    {
        
$tiempoSession time() - $_SESSION["timeout"];
      if (
$tiempoSession>=$inactivo) {
            
// destruimos la sesión y desconectamos al usuario
            
session_destroy();
            
$respuesta=0;
            
$mensajeError="Su sessión será cerrada";
        }

    }
    
// el usuario interactúa por primera vez
    
$_SESSION["timeout"] = time();
    if(
$tiempoSession==20)
    {
        
$respuesta=1;
        
$mensaje="Su sesión será cerrada en 15 segundos";
    }

   
$salidaJson=array(
                
"respuesta"=>$respuesta,
                
"mensaje"=>$mensajeError
        
);

    echo 
json_encode($salidaJson);
?>
y en el sesion.js
Código:
$(document).ready(function(){

	
	var validateSession = setInterval(session,5000); //cada cinco segundos
function session()
	{
		$.ajax({
			cache: false,
			type: "POST",
            dataType:'json',
            url: './sesion.php',
            data: {},
            success: function(response) 
            {
                 if(response.respuesta == 0)
                  {
                          alert(response.mensaje); 
                           clearInterval(validateSession);
                  }else if(response.respuesta == 1){
                  	 alert(response.mensaje); 
                  }
            },
				error: function(){
					alert("Error General del Sistema, Intente Más Tarde");
				}
});
La variable de sesión timeout la defino cuando inicio sesión
Que debo de hacer para que funcione bien y me muestre los mensaje si se ha expirado la sesión del usuario o le falta 20 segundos para que se cierre la sesión?

También me gustaria saber como puedo hacer en el caso que el javascript este deshabilitado? ya q si esta deshabilitado pueda funcionar el de php, se puede?