Publicidade (Anuncie Aqui)

Trabalhando com Sessões no CakePHP

Trabalhando com Sessões no CakePHP

Fala pessoal,

Pretendo falar um pouquinho mais sobre o CakePHP nós próximos dias… Espero que alguém leia e goste! Não vou começar com tutoriais básicos para iniciar com o Cake mas já vou falando de algumas coisas simples que todo mundo vai ler um dia. :)

Hoje vou mostrar como é uso dos métodos do component Session que te ajuda a manipular os valores salvos na sessão de forma mais segura e orientada à objetos.

Pegando todos os valores da sessão

Normalmente, fora do Cake, você trabalharia com a variável global $_SESSION… Agora, com o Cake, você nem precisa se lembrar do nome dela… Veja como pegamos todos os valores da sessão de dentro de um controller:

// Exibe todos os valores da sessão
print_r($this->Session->read());

Se você não criou nem alterou algum valor da sessão o que será exibido vais e paracer com isso:

Array ( [Config] => Array ( [rand] => 262820453 [time] => 1161876896 [userAgent] => c7f575cbe5a4b7ad0efb748d54124611 ) )

Escrevendo valores na sessão

Agora é hora de fazer o component Session trabalhar pra gente e escrever alguns valores na sessão… Vamos salvar dois valores:

// Salva dois valores na sessão
$this->Session->write('usuarioID', 12);
$this->Session->write('usuarioNome', 'Thiago Belem');

Viram que simples?

Lendo/recuperando valores da sessão

Depois de criar valores na sessão você óbviamente vai quere ler esses valores em algum lugar do controller ou da view… No controller faríamos assim:

// Recupera o valor da sessão
$usuario = $this->Session->read('usuarioID');

Caso você queira pegar um valor da sessão dentro da view, é mais ou menos assim:

Seja bem vindo, <?php echo $session->read('usuarioNome'); ?>!

Viram que simples? [2]

Destruindo a sessão

Quando o seu usuário fizer logout você provavelmente vai precisar/querer destruir a sessão dele para ele não continuar “dentro” do sistema… Então é só verificar se é uma sessão valida e o resto você manda pro espaço:

// Destruindo a sessão
if ($this->Session->valid()) {
	$this->Session->destroy(); // Destrói
	$this->redirect('/');// Redireciona o usuário
}

Viram que simples? [3] :D

Existem outras formas e métodos no session component mas essas que eu dei de exemplo são, sem dúvida, as mais usadas e as necessárias para você fazer um bom sistema…

Espero que tenham gostado! :)

Você também vai gostar de ler:

Postado em CakePHP, PHP, Tutoriais

Com as tags , , , , , , , , ,

Escrito por Thiago Belem

Gostou desse artigo?

Não se esqueça de assinar o RSS e divulgue-o para o mundo:

  • Muito o artigo, copiei e postei no meu blog também colocando os devidos créditos, caso haja algum problema é só falar que retiro...parabéns pelo blog!
  • JC BAcellar
    Parabéns pelo site. Sô iniciante e tô satisfeito com o seu material. Continue assim!
  • Cara muito bacana seu post meus parabéns.
  • Cara... meus parabens pelo seu blog.

    Ja esta no favoritos a um bom tempo.

    Parabens...
blog comments powered by Disqus