Programação para Web I Aula 10 Estudo de Caso I Sistema de cadastro e Login com BD – MySQLi e Session
Criando BD Criar um Banco chamado ‘login’ A tabela terá:
Criando BD A tabela irá conter a seguinte configuração. Não será necessário inserir os dados manualmente 512
Criando as Páginas de Conexão Para realizar a conexão conexão.php
Criando Página para Inserir o cadastro no BD Este formulário vai para inserir.php Este formulário vai para logar.php Você pode baixar este formulário no site http://fabianoas.com/programacao-para-web-i/ Na ABA Downloads – Formulário Login
Criando inserir.php O nome dos campos do formulário são: cnome, cemail, cusuario e csenha Estamos criptografando a senha antes. Logo então ao logar, o sistema deve criptografar antes de verificar se existe no banco de dados No próximo slide, veja como ficou registrado no BD
Verificando se houve sucesso no registro
Criando logar.php Campos do formulário logar: lusuario e lsenha
Adicionando Session Entendendo o que uma sessão faz: A sessão permite que, somente o usuário logado por possuir um cadastro no site, possa entrar em uma página restrita/sua página. Você pode criar vários níveis de sessão, como por exemplo: Administrador; Colaborador; Escritor; Assinante, etc. O administrador possui uma sessão que o colaborador não possui. Isso devido ao tipo de Sessão. O Colaborador não deve acessar tudo o que o Administrador consiga.
Adicionando Session Vamos ver então como funciona implementando no nosso exercício. Antes de começar, vamos criar uma página chamada restrita.php E dentro de logar.php, vamos modificar o seguinte código: Para:
Adicionando Session Vamos ver então realmente o que uma sessão faz: Quando você for logar do jeito que está, ele irá redirecionar você para a página restrita.php. Isso está correto. O problema é que se a gente pegar a url e abrir em outro browser, ela irá entrar de qualquer forma, mesmo o usuário não estando logado! VAMOS DAR UM JEITO NISSO!
Adicionando Session Vamos ver então como funciona implementando no nosso exercício. A Sessão deve ser iniciada assim que o usuário logar, logo vamos para logar.php: Verifica se uma sessão já foi criada, se não, ela cria uma nova Salva os dados encontrados no BD e salva na sessão.
Adicionando Session Vamos agora verificar dentro da página SECRETA.PHP se existe um usuário logado e se realmente aquele usuário foi quem entrou! A sessão precisa ser iniciada em todas as páginas Identifica se existe uma sessão identificando o usuário Destroi a sessão caso não!
Adicionando Session Fazendo o logoff/sair.php Sempre precisa iniciar a sessão e quando chamamos o sair.php ela precisa destruir a sessão de qualquer jeito!
Exercício para fazer Refazer este mesmo exercício [sistema de login com BD] e ao invés de fazer com session, vocês deverão fazer com COOKIE Pesquise a diferença e descreva a diferença entre Session x Cookie na página restrita.php