Pegar ID ou USERNAME da sessão Olá, estou desenvolvendo um sistema que em uma determinada página, eu preciso confirmar se o usuário e o proprietário do registro são iguais. Preciso pegar a ID ou o Username de quem está logado no sistema, como fazer isso? ...
JM
Pegar ID ou USERNAME da sessão  
Fechado
Olá, estou desenvolvendo um sistema que em uma determinada página, eu preciso confirmar se o usuário e o proprietário do registro são iguais. Preciso pegar a ID ou o Username de quem está logado no sistema, como fazer isso?

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (6)


RC

Olá Joaby.

Veja um exemplo meu onde pego o nome do usuário logado.

Pego esta informação dentro do onSave para salvar o usuário responsável pelo cadastro e pela alteração:
 
  1. <?php
  2. function onSave() {
  3. try {
  4. TTransaction::open('permission');
  5. $object = $this->form->getData('CentroCusto');
  6. $this->form->validate();
  7. if ($object->id) {
  8. $object->respalteracao = TSession::getValue('username');
  9. $object->dataalteracao = date("Y-m-d");
  10. } else {
  11. $object->datacadastro = date("Y-m-d");
  12. $object->respcadastro = TSession::getValue('username');
  13. $object->respalteracao = TSession::getValue('username');
  14. $object->dataalteracao = date("Y-m-d");
  15. }
  16. $object->store();
  17. $this->form->setData($object);
  18. TTransaction::close();
  19. new TMessage('info', TAdiantiCoreTranslator::translate('Record saved'));
  20. } catch (Exception $e) {
  21. new TMessage('error', '<b>Error</b> ' . $e->getMessage());
  22. TTransaction::rollback();
  23. }
  24. }
  25. ?>
JM

Muito obrigado Ricelli!
RC

Estamos aqui pra ajudar uns aos outros. Fazendo isso, crescemos a comunidade adianti.

PN

Boa noite, sou o Carlos.
Preciso da ajuda de vocês, preciso gravar uma variável de sessão no BD mas não estou conseguindo, se não tivesse a necessidade de gravar salvar o caminho de uma imagem tudo bem, mas não é o caso.
Já procurei no fórum e não achei uma resposta.
Agradeço desde já.

 
  1. <?php
  2. public function onSave()
  3. {
  4. // first, use the default onSave()
  5. $object = parent::onSave();
  6. // if the object has been saved
  7. if ($object instanceof Tbprincipal)
  8. {
  9. $source_file = 'tmp/'.$object->photo_path;
  10. //$target_file = 'images/tombo_' . $object->tombo.substr($object->photo_path, -4);
  11. $target_file = 'images/' . $object->photo_path;
  12. $finfo = new finfo(FILEINFO_MIME_TYPE);
  13. // if the user uploaded a source file
  14. if (file_exists($source_file) AND ($finfo->file($source_file) == 'image/png' OR $finfo->file($source_file) == 'image/jpeg'))
  15. {
  16. // move to the target directory
  17. rename($source_file, $target_file);
  18. try
  19. {
  20. TTransaction::open($this->database);
  21. // update the photo_path
  22. $object->photo_path = $target_file;
  23. $object->unit_id = TSession::getValue('userunitid');
  24. TTransaction::close();
  25. }
  26. catch (Exception $e) // in case of exception
  27. {
  28. if($e->getCode() ==23000){
  29. new TMessage('error', ' ' . 'Tombo já Cadastrado!');
  30. }else{
  31. new TMessage('error', ' ' .$e->getCode(). '-' . $e->getMessage()); // shows the exception error message
  32. }
  33. TTransaction::rollback(); // undo all pending operations
  34. }
  35. }
  36. $image = new TImage($object->photo_path);
  37. $image->style = 'width: 100%';
  38. //$this->frame->add( $image );
  39. }
  40. }
  41. ?>


PN

Boa tarde pessoal, o problema é que o onEdit quando não passamos nenhum key automaticamente limpa o form, tive que comentar a linha

 
  1. <?php
  2. $this->form->clear();
  3. ?>


conforme visto em outro post.
Obrigado.
AN

Boa noite,

Sou inciante, vi o exemplo de capturar o username, mas como faço para pegar o id, pois na minha aplicação estou colocando o cadastro do cliente de acordo com o usuário logado e não estou conseguindo passar o id para o banco de dados.

Obrigado