SlideShare uma empresa Scribd logo
1 de 17
Baixar para ler offline
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
Contenúo
•Acesso a formulários HTML desde PHP
•Autenticação de usuários
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.
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?
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
Caso de estudo
Repositório
de sessões
5 – Nova requisição ao Servidor – Navegador recuperar4
Session ID armazenado
Repositório
sessões
Caso de estudo
•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
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
Exemplo
Index.php Page2.php
Page3.php
session_start();
$_SESSION['variable1']='Hello world'; echo $_SESSION['variable1'];
unset($_SESSION['variable1']);
echo $_SESSION['variable1'];
?
Exemplo page1.php
Exemplo page2.php
Exemplo page3.php
Exemplo2.php
Isset()
Autenticação
de usuários
Segurança para páginas restritas
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

Mais conteúdo relacionado

Semelhante a Tema 4 | Sessão

Aula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - ProcessosAula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - ProcessosMessias Batista
 
Segurança em Aplicativos Web
Segurança em Aplicativos WebSegurança em Aplicativos Web
Segurança em Aplicativos WebSergio Henrique
 
Programação Server Side I - Aula 2
Programação Server Side I - Aula 2Programação Server Side I - Aula 2
Programação Server Side I - Aula 2Antonio Passos
 
PHP Aula 05 - E-mails, Cookies e Sessoes
PHP Aula 05 - E-mails, Cookies e SessoesPHP Aula 05 - E-mails, Cookies e Sessoes
PHP Aula 05 - E-mails, Cookies e SessoesDaniel Brandão
 
Express checkout PayPal
Express checkout PayPalExpress checkout PayPal
Express checkout PayPalJeff Prestes
 
RC Brasil - Reseller Club de A á Z
RC Brasil - Reseller Club de A á ZRC Brasil - Reseller Club de A á Z
RC Brasil - Reseller Club de A á ZResellerClub Brasil
 
Construindo uma Plataforma de Website as a Service (WaaS) com WordPress Multi...
Construindo uma Plataforma de Website as a Service (WaaS) com WordPress Multi...Construindo uma Plataforma de Website as a Service (WaaS) com WordPress Multi...
Construindo uma Plataforma de Website as a Service (WaaS) com WordPress Multi...Arindo Duque
 
Introdução a programação para a Internet
Introdução a programação para a InternetIntrodução a programação para a Internet
Introdução a programação para a InternetLeonardo Soares
 
Visys Chat: comunicação rápida e eficaz com sua equipe e seus clientes.
Visys Chat: comunicação rápida e eficaz com sua equipe e seus clientes.Visys Chat: comunicação rápida e eficaz com sua equipe e seus clientes.
Visys Chat: comunicação rápida e eficaz com sua equipe e seus clientes.Sonia Fernandes Bogo
 
Apresentaoclubedecomprasheleur
ApresentaoclubedecomprasheleurApresentaoclubedecomprasheleur
ApresentaoclubedecomprasheleurMauro Fontes
 
[TDC2015] De unitário a aceitação: Automação de testes com Codeception
[TDC2015] De unitário a aceitação: Automação de testes com Codeception[TDC2015] De unitário a aceitação: Automação de testes com Codeception
[TDC2015] De unitário a aceitação: Automação de testes com CodeceptionQualister
 
Estação de Controle Multimídia com Interface Web utilizando Sistema Operacion...
Estação de Controle Multimídia com Interface Web utilizando Sistema Operacion...Estação de Controle Multimídia com Interface Web utilizando Sistema Operacion...
Estação de Controle Multimídia com Interface Web utilizando Sistema Operacion...André Curvello
 
Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Renzo Nuccitelli
 
Google App Engine e Python
Google App Engine e PythonGoogle App Engine e Python
Google App Engine e PythonPeslPinguim
 
Cookies e Sessions no HTTP
Cookies e Sessions no HTTPCookies e Sessions no HTTP
Cookies e Sessions no HTTPWillian Watanabe
 

Semelhante a Tema 4 | Sessão (20)

Sessao
SessaoSessao
Sessao
 
Aula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - ProcessosAula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - Processos
 
Start Up Guide 2017
Start Up Guide 2017Start Up Guide 2017
Start Up Guide 2017
 
Segurança em Aplicativos Web
Segurança em Aplicativos WebSegurança em Aplicativos Web
Segurança em Aplicativos Web
 
Aplicações web parte 1
Aplicações web parte 1Aplicações web parte 1
Aplicações web parte 1
 
Programação Server Side I - Aula 2
Programação Server Side I - Aula 2Programação Server Side I - Aula 2
Programação Server Side I - Aula 2
 
PHP Aula 05 - E-mails, Cookies e Sessoes
PHP Aula 05 - E-mails, Cookies e SessoesPHP Aula 05 - E-mails, Cookies e Sessoes
PHP Aula 05 - E-mails, Cookies e Sessoes
 
Express checkout PayPal
Express checkout PayPalExpress checkout PayPal
Express checkout PayPal
 
RC Brasil - Reseller Club de A á Z
RC Brasil - Reseller Club de A á ZRC Brasil - Reseller Club de A á Z
RC Brasil - Reseller Club de A á Z
 
Construindo uma Plataforma de Website as a Service (WaaS) com WordPress Multi...
Construindo uma Plataforma de Website as a Service (WaaS) com WordPress Multi...Construindo uma Plataforma de Website as a Service (WaaS) com WordPress Multi...
Construindo uma Plataforma de Website as a Service (WaaS) com WordPress Multi...
 
PHP MySQL Aula 08
PHP MySQL Aula 08PHP MySQL Aula 08
PHP MySQL Aula 08
 
Introdução a programação para a Internet
Introdução a programação para a InternetIntrodução a programação para a Internet
Introdução a programação para a Internet
 
Visys Chat: comunicação rápida e eficaz com sua equipe e seus clientes.
Visys Chat: comunicação rápida e eficaz com sua equipe e seus clientes.Visys Chat: comunicação rápida e eficaz com sua equipe e seus clientes.
Visys Chat: comunicação rápida e eficaz com sua equipe e seus clientes.
 
Apresentaoclubedecomprasheleur
ApresentaoclubedecomprasheleurApresentaoclubedecomprasheleur
Apresentaoclubedecomprasheleur
 
[TDC2015] De unitário a aceitação: Automação de testes com Codeception
[TDC2015] De unitário a aceitação: Automação de testes com Codeception[TDC2015] De unitário a aceitação: Automação de testes com Codeception
[TDC2015] De unitário a aceitação: Automação de testes com Codeception
 
Estação de Controle Multimídia com Interface Web utilizando Sistema Operacion...
Estação de Controle Multimídia com Interface Web utilizando Sistema Operacion...Estação de Controle Multimídia com Interface Web utilizando Sistema Operacion...
Estação de Controle Multimídia com Interface Web utilizando Sistema Operacion...
 
Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE
 
Google App Engine e Python
Google App Engine e PythonGoogle App Engine e Python
Google App Engine e Python
 
Cookies e Sessions no HTTP
Cookies e Sessions no HTTPCookies e Sessions no HTTP
Cookies e Sessions no HTTP
 
WordPress
WordPressWordPress
WordPress
 

Mais de Henry Raúl González Brito

Estudio de ciberataques basados en el campo de encabezado referer
Estudio de ciberataques basados en el campo de encabezado refererEstudio de ciberataques basados en el campo de encabezado referer
Estudio de ciberataques basados en el campo de encabezado refererHenry Raúl González Brito
 
OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTIC...
OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTIC...OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTIC...
OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTIC...Henry Raúl González Brito
 
EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...
EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...
EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...Henry Raúl González Brito
 
ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...
ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...
ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...Henry Raúl González Brito
 
Noções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores DigitaisNoções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores DigitaisHenry Raúl González Brito
 
CONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAIS
CONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAISCONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAIS
CONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAISHenry Raúl González Brito
 

Mais de Henry Raúl González Brito (20)

Estudio de ciberataques basados en el campo de encabezado referer
Estudio de ciberataques basados en el campo de encabezado refererEstudio de ciberataques basados en el campo de encabezado referer
Estudio de ciberataques basados en el campo de encabezado referer
 
10 Principales Controles Proactivos de OWASP
10 Principales Controles Proactivos de OWASP 10 Principales Controles Proactivos de OWASP
10 Principales Controles Proactivos de OWASP
 
Information Gathering | OWASP
Information Gathering | OWASPInformation Gathering | OWASP
Information Gathering | OWASP
 
OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTIC...
OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTIC...OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTIC...
OPERADORES A NIVEL DE BITS EN APLICACIONES WEB Y SU UTILIZACIÓN EN LA DOMÓTIC...
 
EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...
EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...
EXTENSIÓN DEL ERP CEDRUX CON EL MARCO DE TRABAJO SAUXE. CASO DE ESTUDIO: SUBS...
 
ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...
ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...
ESTUDIO DEL COMPORTAMIENTO DEL FENÓMENO SCOPE CREEP EN UN CENTRO DE DESARROLL...
 
Aula 5 | LABORATORIO 1. Solução
Aula 5 | LABORATORIO 1. SoluçãoAula 5 | LABORATORIO 1. Solução
Aula 5 | LABORATORIO 1. Solução
 
Aula 5 | LABORATORIO 1
Aula 5 | LABORATORIO 1Aula 5 | LABORATORIO 1
Aula 5 | LABORATORIO 1
 
Aula 3 | Registros e Funções
Aula 3 | Registros e FunçõesAula 3 | Registros e Funções
Aula 3 | Registros e Funções
 
Aula 4 | Funções
Aula 4 | Funções Aula 4 | Funções
Aula 4 | Funções
 
Aula 2 | Vetores
Aula 2 | VetoresAula 2 | Vetores
Aula 2 | Vetores
 
Aula 1 | Introdução a C++
Aula 1 | Introdução a C++Aula 1 | Introdução a C++
Aula 1 | Introdução a C++
 
Tema 3 | Formulários
Tema 3 | FormuláriosTema 3 | Formulários
Tema 3 | Formulários
 
Tema 2 | Linguagem PHP Básico (II)
Tema 2 | Linguagem PHP Básico (II)Tema 2 | Linguagem PHP Básico (II)
Tema 2 | Linguagem PHP Básico (II)
 
Tema 2 | Linguagem PHP Básico (I)
Tema 2 | Linguagem PHP Básico (I)Tema 2 | Linguagem PHP Básico (I)
Tema 2 | Linguagem PHP Básico (I)
 
Tema 1 | Introdução a PHP
Tema 1 | Introdução a PHPTema 1 | Introdução a PHP
Tema 1 | Introdução a PHP
 
Noções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores DigitaisNoções Básicas do Software dos Computadores Digitais
Noções Básicas do Software dos Computadores Digitais
 
A FUNÇÃO SOCIAL DO ENGENHEIRO
A FUNÇÃO SOCIAL DO ENGENHEIROA FUNÇÃO SOCIAL DO ENGENHEIRO
A FUNÇÃO SOCIAL DO ENGENHEIRO
 
CONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAIS
CONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAISCONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAIS
CONSTITUÇÃO BÁSICA DO HARDWARE DOS COMPUTADORES DIGITAIS
 
História da engenharia
História da engenhariaHistória da engenharia
História da engenharia
 

Tema 4 | Sessão

  • 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
  • 2. Contenúo •Acesso a formulários HTML desde PHP •Autenticação de usuários
  • 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
  • 10. Exemplo Index.php Page2.php Page3.php session_start(); $_SESSION['variable1']='Hello world'; echo $_SESSION['variable1']; unset($_SESSION['variable1']); echo $_SESSION['variable1']; ?
  • 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