예제 #1
0
 public function login($objeto)
 {
     //VERIFICA SE O FORMULÁRIO FOI SUBMETIDO
     if ($_SERVER['REQUEST_METHOD'] == 'POST') {
         $objeto->extras_select = " WHERE email = '" . $objeto->getValor('email') . "' AND senha = '" . md5($objeto->getValor('senha')) . "'";
         $objeto->read($objeto);
         //VERIFICA SE OS DADOS CONFEREM COM O BANCO DE DADOS
         if ($objeto->linhasafetadas > 0) {
             $usuario = $objeto->retornaDados('assoc');
             $objAux = new UsuarioModel();
             $objAux->setValorpk($usuario[0]['id']);
             $objAux->setValor('logado', 's');
             $objAux->atualizaUsuario($objAux);
             //VERIFICA SE O USUÁRIO FOI ATUALIZADO NO BANCO PARA LOGADO = 1
             if ($objeto->linhasafetadas > 0) {
                 // Define o limitador de cache para 'private'
                 session_cache_limiter('private');
                 $cache_limiter = session_cache_limiter();
                 // Define o limite de tempo do cache em 30 minutos
                 session_cache_expire(30);
                 $cache_expire = session_cache_expire();
                 //TENTA LOCALIZAR O LOGIN DO USUÁRIO
                 if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
                     $ip = $_SERVER['HTTP_CLIENT_IP'];
                 } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
                     $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
                 } else {
                     $ip = $_SERVER['REMOTE_ADDR'];
                 }
                 $_SESSION['logado'] = 's';
                 $_SESSION['ip'] = $ip;
                 $_SESSION['usuario'] = $usuario[0]['email'];
                 $_SESSION['nome'] = $usuario[0]['nome'];
                 $_SESSION['permissao'] = $usuario[0]['permissao'];
                 $_SESSION['id'] = $usuario[0]['id'];
                 return TRUE;
             }
         }
     }
     return FALSE;
 }