php aula 05 - e-mails, cookies e sessoes

43
Programação Dinâmica para Web E-mails, Cookies e Sessões www.DanielBrandao.com.br

Upload: daniel-brandao

Post on 18-Feb-2017

311 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: PHP Aula 05 - E-mails, Cookies e Sessoes

Programação Dinâmica para Web

E-mails, Cookies e Sessões

www.DanielBrandao.com.br

Page 2: PHP Aula 05 - E-mails, Cookies e Sessoes

Envio de E-mails via PHP

Page 3: PHP Aula 05 - E-mails, Cookies e Sessoes

Envio de E-mails via PHP

mail: Envia um e-mail de acordo com as configurações SMTP do servidor;

OBS.: Para o envio, deve haver no servidor a configuração do serviço SMTP. Do contrário o envio não será possível.

3

mail (destino, assunto, corpo)

Parâmetros Descrição

destino Endereço de e-mail do destino

assunto Assunto do e-mail

corpo Corpo do e-mail

Page 4: PHP Aula 05 - E-mails, Cookies e Sessoes

Manipulação de Arquivos

Função mail() – Exemplo:

4

Page 5: PHP Aula 05 - E-mails, Cookies e Sessoes

Cookies

Page 6: PHP Aula 05 - E-mails, Cookies e Sessoes

Cookies

• Frequentemente utilizados para identificar um usuário, trata-se de um pequeno arquivo texto que o servidor “instala” no computador do usuário;

• Cada vez que este computador efetuar uma requisição pelo navegador, ele também enviará o cookie ao servidor;

Page 7: PHP Aula 05 - E-mails, Cookies e Sessoes

Cookies

• Utilidades práticas de Cookies e Sessões:

– Autenticação de usuários;

– Carrinho de compras;

– Exibição de anúncios ou imagens;

– Personalização de Páginas.

Page 8: PHP Aula 05 - E-mails, Cookies e Sessoes

Criando um Cookie

Page 9: PHP Aula 05 - E-mails, Cookies e Sessoes

Criando um Cookie

• A função setcookie() é utilizada para setar um cookie. Sua sintaxe é simples e segue essa estrutura:

10

Page 10: PHP Aula 05 - E-mails, Cookies e Sessoes

Criando um Cookie

• Exemplo:

11

Page 11: PHP Aula 05 - E-mails, Cookies e Sessoes

Obtendo o Valor de um Cookie

Page 12: PHP Aula 05 - E-mails, Cookies e Sessoes

Obtendo o Valor de um Cookie

• A variável superglobal $_COOKIE é utilizada para receber o valor de um Cookie. Exemplo:

13

Page 13: PHP Aula 05 - E-mails, Cookies e Sessoes

Excluindo um Cookie

Page 14: PHP Aula 05 - E-mails, Cookies e Sessoes

Excluindo um Cookie

• Para excluir um Cookie, podemos fazer de duas maneiras.

1) Assegurar que o tempo de expiração foi atingido. Exemplo:

15

Page 15: PHP Aula 05 - E-mails, Cookies e Sessoes

Excluindo um Cookie

• Para excluir um Cookie, podemos fazer de duas maneiras.

2) Executar apenas o parâmetro nome. Exemplo:

16

Page 16: PHP Aula 05 - E-mails, Cookies e Sessoes

Exercício 1

Page 17: PHP Aula 05 - E-mails, Cookies e Sessoes

Exercício 1

• Etapas 1:

– Crie uma pasta chamada cookies no diretório raiz (htdocs) ;

18

Page 18: PHP Aula 05 - E-mails, Cookies e Sessoes

Exercício

• Etapa 2 – Criação de um formulário HTML

Crie uma página HTML com um formulário, onde o usuário deverá digitar seu nome e a cidade que nasceu;

Método de envio: GET;

Os dados deverão ser submetidos para o script “cria_cookies.php”;

Salve o documento HTML na pasta cookies com o nome formulario.html;

19

Page 19: PHP Aula 05 - E-mails, Cookies e Sessoes

Exercício

• Etapa 3 – Criação do script cria_cookies.phpna pasta cookies

– O script deverá receber os dados submetidos pelo formulário HTML anterior;

– Armazenar cada dado em um Cookie;

– Redirecionar o usuário para o script mensagem.php (Como fazer isso? Usando HTML? Usando PHP?);

20

Page 20: PHP Aula 05 - E-mails, Cookies e Sessoes

Exercício

• Etapa 4 – Criação do script mensagem.php na pasta cookies

– O script deverá receber os dados armazenados em cookies pelo script anterior e exibir a frase:

“_________ nasceu em _________”;

21

Page 21: PHP Aula 05 - E-mails, Cookies e Sessoes

Exercício

• Etapa 5 – Testar a aplicação

Abra um navegador e acesse o arquivo formulario.html criado;

Digite seu nome e a cidade que você nasceu para testar a aplicação;

Verifique se o retorno foi igual aos valores digitados no formulário.

22

Page 22: PHP Aula 05 - E-mails, Cookies e Sessoes

Variáveis de Sessão

Page 23: PHP Aula 05 - E-mails, Cookies e Sessoes

Variáveis de Sessão

• São usadas para armazenar informações do usuário no servidor para uso posterior. Exemplos:

– Nome de Usuário;

– Itens de um carrinho de compras;

• Tais variáveis estão disponíveis para todas as páginas da aplicação;

Page 24: PHP Aula 05 - E-mails, Cookies e Sessoes

Variáveis de Sessão

• Informações de sessão são temporárias!

– Serão excluídas quando o usuário deixar o site/sistema;

• Sessões trabalham com a criação de um ID único (UID) para cada visitante e armazena variáveis baseadas nessas IDs;

Page 25: PHP Aula 05 - E-mails, Cookies e Sessoes

Iniciando uma Sessão PHP

Page 26: PHP Aula 05 - E-mails, Cookies e Sessoes

Iniciando uma Sessão PHP

• Antes de armazenar informações de sessão, você deverá iniciá-la;

27

Page 27: PHP Aula 05 - E-mails, Cookies e Sessoes

Criando uma Variável de Sessão

Page 28: PHP Aula 05 - E-mails, Cookies e Sessoes

Criando uma Variável de Sessão

• Para declarar, atribuir e obter variáveis de sessão, deveremos utilizar a variável superglobal $_SESSION;

29

Page 29: PHP Aula 05 - E-mails, Cookies e Sessoes

Excluindo uma Sessão

Page 30: PHP Aula 05 - E-mails, Cookies e Sessoes

Excluindo uma Sessão

• Para excluir uma variável de sessão, utilizamos a função unset();

• Para excluir todas as variáveis de sessão, utilizamos a função session_destroy()

31

Page 31: PHP Aula 05 - E-mails, Cookies e Sessoes

Exercício 2

Page 32: PHP Aula 05 - E-mails, Cookies e Sessoes

Exercício 2

• Etapa 1 – Preparação do Domínio

Crie uma pasta em htdocs chamada sessoes;

33

Page 33: PHP Aula 05 - E-mails, Cookies e Sessoes

Exercício

• Etapa 2 – Criação de um formulário HTML

Crie um formulário HTML que permita ao usuário digitar seu login e senha;

Método de envio: POST;

Os dados deverão ser submetidos para o script “checa_login.php”;

Salve o documento HTML na pasta sessoes com o nome formulario.html;

34

Page 34: PHP Aula 05 - E-mails, Cookies e Sessoes

Exercício

• Etapa 3 – Criação do script checa_login.php O script deverá inicialmente receber o login e senha

submetidos na etapa anterior e checar se o login e a senha estão corretos; Considere que o login padrão do sistema seja aula e a senha seja

php;

Caso o usuário tenha o acesso confirmado, o script deverá criar a variável de sessão logou, atribuindo a mesma o valor 1;

Caso contrário, o script deverá atribuir o valor 0 para a variável de sessão logou;

Logo em seguida, o script deverá redirecionar o usuário para o script principal.php (função header);

35

Page 35: PHP Aula 05 - E-mails, Cookies e Sessoes

Exercício

• Etapa 4 – Criação do script principal.php na pasta sessoes

– O script deverá checar se o usuário tem permissão para acessá-lo (checar se a variável de sessão logou é igual a 1) ;

– Caso o usuário tenha permissão, o script deverá exibir a frase “Bem-vindo ao Sistema”;

– Caso contrário, o script deverá redirecionar o usuário para a página formulario.html;

36

Page 36: PHP Aula 05 - E-mails, Cookies e Sessoes

Exercício

• Etapa 5 – Testar a aplicação

Abra um navegador e acesse formulário.html na pasta sessoes;

Insira Usuario e Senha e tente logar;

Deu certo?

37

Page 37: PHP Aula 05 - E-mails, Cookies e Sessoes

EXTRA:A função include()

Page 38: PHP Aula 05 - E-mails, Cookies e Sessoes

A função include()

• Podemos inserir o conteúdo de um arquivo PHP em outro arquivo PHP antes que o servidor os execute;

• Através desta função, podemos criar arquivos PHP que podem ser reusados por outros arquivos, evitando repetição de codificação;

• Desta forma, podemos criar arquivos PHP que contém funções ou trechos de código que se repetem com frequência;

Page 39: PHP Aula 05 - E-mails, Cookies e Sessoes

A função include()

• A função include() obtém todo o conteúdo de um arquivo específico e o inclui no arquivo que invocou a função;

• Se um erro ocorrer (ex.: o arquivo indicado na função não existir), tal função irá gerar uma mensagem de advertência, mas o script continuará sua execução;

Page 40: PHP Aula 05 - E-mails, Cookies e Sessoes

A função include()

• Ex. - Script PHP que calcula a soma de dois números (funcoes.php):

<?php

function soma($num1, $num2)

{

$resultado = $num1 + $num2;

return $resultado;

}

?>

Page 41: PHP Aula 05 - E-mails, Cookies e Sessoes

A função include()

• Ex. - Arquivo PHP que invoca o arquivo funcoes.php e calcula a soma de dois números (calcula.php):

<?php

include(“funcoes.php”);

soma(4,7);

?>

Page 42: PHP Aula 05 - E-mails, Cookies e Sessoes

A função include()

• Tente fazer testes e pesquise mais sobre esta função específica.

• Pesquise também sobre a função Require(), que tem objetivo semelhante.

Page 43: PHP Aula 05 - E-mails, Cookies e Sessoes

OBSERVAÇÃO

• Lembre-se que esses dois exercícios farão parte da lista de exercícios finais a ser entregue no final do 2º Estágio.