Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Tenho uma aplicação que não pode ser acessado em locais diferentes, tipo o usuário não pode logar já estando logado no sistema.
Minha idéia é, mostrar pro usuário que ele já ta logado em outro terminal e da a opção de fechar a sessão do outro terminal e abrir outra no terminal atual.
Bom! Sou limitado em cake e não sei muita coisa ainda mas to tentando fazer gravando um campo no banco de dados Usuario.logado
meu app_controlle
function beforeRender() {
//Verifico se o usuario logou
if($this->Auth->user('id')){
$this->loadModel('Usuario');
//Faço abusca no bd
$busca_bd = $this->Usuario->find('first',array('conditions'=>array('Usuario.id'=>$this->Auth->user('id')),'recursive'=>-1));
if($busca_bd['Corretor']['logado']=="on"){
echo "você ja esta logado em outro terminal efetue logout";
}
}
}
Meu logout
function logout() {
$this->Corretor->id=$this->Auth->user('id');
$this->Corretor->saveField('logado', "off");
$this->redirect($this->Auth->logout());
}
Bom como podem perceber isso nao serve pra nada, pois somete informa que o usuario esta logado em outro terminal pq o status dele ta como Usuarior.logado=on
isso no maximo serve pra mostrar usuarios online e dizer que ele nao passou pelo processo de logout pois nao gravou no bd Usuario.logado=off.
O texto ta longo :P
Gostaria de saber se tem como eu saber se o usuario ta logado ou nao pelo cake?
Se o cake tem algum recurso pra isso tipo sessao?
E se tiver se tem como tipo eu destruir essa sessão e criando outra?
Bom é isso nao sei se expliquei bem!! Mas obrigado pela ajuda que vier ^^. :joia:
Carregando comentários...