Tema 4 | Sessão

17
Tema 4 | Sessão AULA 5 INTRODUÇÃO A PROGRAMAÇÃO DE APLICAÇÕES WEB DE CONTEÚDOS DINÂMICOS COM PHP MSC. Henry Raúl González Brito | [email protected]

Transcript of Tema 4 | Sessão

Page 1: Tema 4 | Sessão

Tema 4 | SessãoAULA 5

INTRODUÇÃO A PROGRAMAÇÃO DE APLICAÇÕES WEB DE CONTEÚDOS DINÂMICOS COM PHP

MSC. Henry Raúl González Brito | [email protected]

Page 2: Tema 4 | Sessão

Contenúo

•Acesso a formulários HTML desde PHP

•Autenticação de usuários

Page 3: Tema 4 | Sessão

PROBLEMA: CARRINHO DE COMPRAS NUMA LOJA VIRTUAL

A concessionária de veículos está vendendo os seus veículos

com desconto. Faça um website com PHP que calcule e exiba

o valor do desconto e o valor a ser pago pelo cliente de

vários carros. O desconto deverá ser calculado de acordo

com o ano do veículo. Até 2000 - 12% e acima de 2000 - 7%.

O Utilizador só tem que digitar o modelo, ano e o preço

normal do veículo.

Page 4: Tema 4 | Sessão

Manutenção do estado de um sistema Web

•Como manter o estado das variáveis num sistema Web entre as requisições do usuário?• Protocolo HTTP é “Stateless” (sem manutenção de

estado)

•Dúvidas:

• Como autenticar um usuário e garantir seu acesso seguro em páginas restritas?

• Como garantir que estas páginas restritas sejam acessada apenas por usuários autenticados?

• Caso prático: como implementar um carrinho de compras numa loja virtual?

Page 5: Tema 4 | Sessão

Modo seguro para armazenamento de variáveis

•Armazenadas no Servidor Web

•Usuário não tem acesso direto aos dados da sua sessão

•Uma sessão pode conter um conjunto de variáveis do usuário

•Fácil implementação

Array $_SESSION

Uma sessão é identificada através do seu Session ID

Page 6: Tema 4 | Sessão

Caso de estudo

Repositório

de sessões

Page 7: Tema 4 | Sessão

5 – Nova requisição ao Servidor – Navegador recuperar 4Session ID armazenado

Repositóriosessões

Caso de estudo

Page 8: Tema 4 | Sessão

•Criação / abertura de uma sessão no servidor

• Lê as variáveis de sessão do usuário e prepara o Array $_SESSION com estes valores

•Por padrão, nenhum comando de saída pode ser executado pelo script antes de session_start!

Atribuição de valores $_SESSION['username'] = henryraul';

Leitura de valores echo $_SESSION['username'];

Função session_start

Page 9: Tema 4 | Sessão

Função session_destroy

•Destruir uma sessão no servidor, de acordo com o Session ID enviado pelo browser.

•Exemplosession_start(); //abrir a sessão

session_destroy(); //destruir a sessão

Page 10: Tema 4 | Sessão

Exemplo

Index.php Page2.php

Page3.php

session_start();$_SESSION['variable1']='Hello world'; echo $_SESSION['variable1'];

unset($_SESSION['variable1']);

echo $_SESSION['variable1']; ?

Page 11: Tema 4 | Sessão

Exemplo page1.php

Page 12: Tema 4 | Sessão

Exemplo page2.php

Page 13: Tema 4 | Sessão

Exemplo page3.php

Page 14: Tema 4 | Sessão

Exemplo2.php

Isset()

Page 15: Tema 4 | Sessão

Autenticação de usuários

Page 16: Tema 4 | Sessão

Segurança para páginas restritas

Page 17: Tema 4 | Sessão

Tema 4 | SessãoAULA 5

INTRODUÇÃO A PROGRAMAÇÃO DE APLICAÇÕES WEB DE CONTEÚDOS DINÂMICOS COM PHP

MSC. Henry Raúl González Brito | [email protected]