What is the best way to set a user timeout on a session?
Say if the user steps away from their computer for say 5 min,
and they come back to the page they were on, I want when the user clicks something for the session to kick them off and redirect to login saying their session has timed out.
I have this code currently:


  /*Users timout*/
  function getIdle(){
  global $database;
        if($this->isGuest()) {
              if (!isset($_SESSION['timeout_idle'])) {
                            $_SESSION['timeout_idle'] = time() + GUEST_TIMEOUT;
                        } else {
                            if ($_SESSION['timeout_idle'] < time()) {
                                //destroy session
                                return(true);
                            } else {
                                $_SESSION['timeout_idle'] = time() + 
GUEST_TIMEOUT;
                                return(false);
                            }
                  }
          } else {
              if (!isset($_SESSION['timeout_idle'])) {
                            $_SESSION['timeout_idle'] = time() + USER_TIMEOUT;
                        } else {
                            if ($_SESSION['timeout_idle'] < time()) {
                                //destroy session
                                return(true);
                            } else {
                                $_SESSION['timeout_idle'] = time() + 
USER_TIMEOUT;
                                return(false);
                            }
                  }
          }
   }

But it doesn't time anything out.. I could walk away for an hour and come back and go to a link.
TIA,


Karl DeSaulniers
Design Drumm
http://designdrumm.com

Reply via email to