Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Slide 05 implementando o login , logout e flash data

172 views

Published on

Slide 05 implementando o login , logout e flash data

Published in: Technology
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (2019 Update) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://soo.gd/irt2 } ......................................................................................................................... Download Full EPUB Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download Full doc Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download PDF EBOOK here { https://soo.gd/irt2 } ......................................................................................................................... Download EPUB Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download doc Ebook here { https://soo.gd/irt2 } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book THIS can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer THIS is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBooks .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story THIS Helped Ignite a Movement,-- Atomic Habits: An Easy & Proven Way to Build Good Habits & Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money THIS the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths THIS Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Slide 05 implementando o login , logout e flash data

  1. 1. Implementando o Login e Logout Exibindo mensagens com o FlashData Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima
  2. 2. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Implementando o Login e Logout
  3. 3. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Hoje nós iremos aprender a criar uma função de Login e Logout para os clientes no Mercado Online, e hoje nós faremos as seguintes configurações: • Criaremos um formulário para Login; • Criaremos a função de Login; • Aprenderemos a utilizar a Session; • Criaremos a função de Logout; • Aprenderemos a utilizar o Anchor; • Aprenderemos a utilizar o FlashData. • Exercício;
  4. 4. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Inicialmente para criar um sistema de login, precisaremos de alguns dados do cliente para autenticar, neste caso utilizaremos o E-mail e Senha para autenticar, precisaremos de um formulário de Login, e este formulário deve enviar as informações para um novo controller chamado login que terá apenas o método autenticar. Utilize o helper FORM para lhe auxiliar.
  5. 5. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima No controller login, criaremos a função autentica e dentro desta função pegaremos o E-mail e Senha que o usuário informou, e consultaremos no nosso Banco de Dados para verificar se existe algum cadastro com o e-mail e senha informados. Para verificar criaremos uma função no Usuarios_model chamado autentica, que receberá o e-mail e senha. Lembre-se de transformar a senha em MD5.
  6. 6. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Nosso Controller deve estar semelhante a este:
  7. 7. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Agora vamos criar nossa função autentica no usuarios_model. Para criar essa função devemos receber como parâmetro um usuário, porém temos que verificar se o E-mail e senha estão no nosso banco de dados e depois retorna se achou ou se não achou, para verificar dados específicos em um Banco de dados precisamos utilizar um Where. Porém como fazer isso no CodeIgniter? Podemos fazer de duas maneiras simples. 1. Antes de consultar informa o Where; 2. Mudar nosso código para utilizar o get_where, que passamos a tabela e uma array com os dados do Where.
  8. 8. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima 1. Informando o Where antes da consulta: public function autentica($usuario){ $this->db->where("email", $usuario["email"]); $this->db->where("senha", $usuario["senha"]); $usuario = $this->db->get("usuarios")->row_array(); return $usuario; }
  9. 9. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima 2. Utilizando o get_where: public function autentica($usuario){ $usuario = $this->db->get_where("usuarios", array( "email"=>$usuario["email"], "senha"=>$usuario["senha"]) )->row_array(); return $usuario; }
  10. 10. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Agora nós temos nosso código que verifica se existe um usuário com o E-mail e Senha Informados. Porém, aonde vamos armazenar aquele resultado? Seria legal que depois que localizarmos um usuário criar uma sessão para ele, algo que só o usuário que eu acabei de achar e o servidor tivessem. No CodeIgniter existe uma função chamada userdata, que fica dentro da classe session, para adicionar um valor nesta função, utiliza o set_userdata, mas vamos passar uma Mensagem também, para deixar nosso código mais compreensível para o usuário, e depois Direcionaremos para uma view que exibirá está mensagem. Então nosso código irá ficar semelhante a este:
  11. 11. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de LimaRealize um teste, utilizando o seu usuário cadastrado.
  12. 12. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Só que quando vamos testar, ele já cai em um erro.
  13. 13. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Mas espera um momento, nós já vimos este erro em outro slide: A PHP Error was encountered Severity: Notice Message: Undefined property: Login::$session Filename: controllers/login.php Erro de propriedade indefinida? Neste caso, nossa propriedade está correta, mas porque não está carregando? Por um simples e pequeno motivo, esquecemos de carregar a library da session, mas a Session é algo muito importante para todo meu código e eu vou utilizar bastante ela. Então vamos voltar no AutoLoad, e além de carregar o database, iremos carregar a Session automaticamente.
  14. 14. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Mas se eu já fiz o login no sistema, não quero que apareça o formulário para fazer o login Ou o formulário de cadastro novamente, eu quero que apareça apenas os produtos. E se eu estou logado no sistema, eu também quero fazer o Logout. Vamos fazer uma parte de cada vez: 1. Alteraremos a index, para caso estejamos logados, não exibir os formulários; 2. Criar um botão para fazer o logout; 3. Melhorar a visualização da mensagem de “Logado com Sucesso” ou “Login ou Senha inválidas”;
  15. 15. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Começaremos com o mais fácil e rápido, vá na pasta Produtos e no arquivo Index.php, e antes de criar os formulários faça uma verificação utilizando um if. - Mas if o que? Se nós utilizamos o set_userdata, para atribuir um valor no userdata, vamos utiliza-lo Para verificar se existe algum valor “setado” ou não. Para realizar esta verificação fazemos: <?php if($this->session->userdata("usuario_logado")) : ?> E logo após criarmos o ultimo formulário, terminaremos o nosso if: <?php endif ?>
  16. 16. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Agora que fazemos uma verificação para ver se tem algum usuário ativo ou não no sistema, só que falto o botão de deslogar. Para criar este botão, utilizaremos um anchor, que recebe 3 parâmetros, o primeiro é qual a ação dele quando clicado, o segundo é o nome que será exibido e o terceiro é um array que contem as informações dele, como class, id, name e outras Tag de HTML.
  17. 17. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima
  18. 18. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Nosso anchor direciona para o login/logout, porém ainda não criamos está função. Vamos no Controller Login e criaremos a função logout, que ela ira retirar o valor do login. public function logout(){ $this->session->unset_userdata("usuario_logado"); }
  19. 19. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Agora nós temos um sistema de Login e Logout de usuários, mas ainda falta melhorar na questão das mensagens, seria legal utilizar alguma função que exibisse a mensagem apenas uma vez e depois desaparecesse. Para isso nós temos a função flashdata, que recebe 2 parâmetros. O Primeiro parâmetro é o nome do flashdata e o segundo é a mensagem que dele. Vamos adicionar um valor no flashdata quando fazemos o login. Para isso retorne a função Autenticar e caso ele ache um usuário, adicione uma mensagem de: “Login realizado com sucesso” E depois, redirecione para a pagina inicial.
  20. 20. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima
  21. 21. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Depois de ter criado a mensagem, vamos exibi-la. Vá na pasta Produtos e abra o arquivo Index, e antes da tag h1 Produtos, verifique se tem algum flashdata do tipo “success”, e se tiver vamos exibi-lo.
  22. 22. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Este é o código que deve ser adicionado na Index: <?php if($this->session->flashdata("success")) : ?> <p style="text-align:center;" class="alert alert-success"> <?= $this->session->flashdata("success"); ?> </p> <?php endif ?> Agora temos uma index mais bonita e com uma mensagem mais agradavel.
  23. 23. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Exercicio
  24. 24. Implementando o Login e Logout Exibindo mensagens com o FlashData Criado por: Raniere de Lima Crie um flashdata para caso o login ou senha estiverem erradas, e para quando o Logout for realizado.

×