1. 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 | henryraul@gmail.com
3. 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.
4. 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?
5. 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
7. 5 – Nova requisição ao Servidor – Navegador recuperar4
Session ID armazenado
Repositório
sessões
Caso de estudo
8. •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
9. Função session_destroy
•Destruir uma sessão no servidor, de acordo com o
Session ID enviado pelo browser.
•Exemplo
session_start(); //abrir a sessão
session_destroy(); //destruir a 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 | henryraul@gmail.com