SlideShare uma empresa Scribd logo
1 de 12
Aula 5 
 Cookies e Sessões 
 Metas 
 Criar e utilizar cookies e sessões na linguagem PHP. 
 Pré-requisitos 
 Lógica de Programação e HTML; 
 Linguagens de Programação I. 
 Objetivos 
 Conhecer os principais conceitos relacionados com os 
cookies e as sessões; 
 Aprender a criar cookies e sessões em PHP; 
 Entender a implementação destes recursos em PHP.
Para que servem Cookies e Sessões? 
 O protocolo HTTP é stateless, ou seja, ele não mantém um 
estado/conexão. Toda a interação que o seu cliente fizer 
com um servidorWeb acarretará em uma nova requisição e 
resposta. 
 As requisições são independentes e possuem um tempo de 
vida (conexão, envio de mensagem, resposta, encerramento 
da conexão). O servidorWeb não é capaz de identificar se 
duas requisições vieram de um mesmo navegador, e o 
mesmo não faz nenhum gerenciamento em memória para 
que mensagens sejam compartilhadas entre requisições. 
 É para suprir esta necessidade que entram os cookies e 
sessões
Cookies 
 Utilizado para armazenar informações no 
computador/máquina do usuário/cliente mesmo que o 
navegador seja fechado sem o uso de um banco de 
dados. 
 Preferências de usuário também utilizam Cookies 
 Através de cookies o servidorWeb é capaz de trocar 
informações de estado com o navegador do usuário. 
Desse modo, somos capazes de adicionar produtos a 
um carrinho de compras, sem perder estas 
informações ao mudar de página, sair do website ou até 
mesmo fechar o navegador.
Uso de Cookies em PHP 
 O uso de Cookies em PHP envolve basicamente dois 
passos: 
1. Criar o Cookie 
2. Recuperar o valor do Cookie 
 Na criação do cookie indicamos qual informação será salva 
(deve ser uma String) e criamos um identificador para 
referenciá-la 
int setCookie(“nome”, “valor”, tempo_expiração); Nome e valor 
são obrigátorios 
 Uma vez definido o Cookie podemos referenciá-lo através 
da super global $_COOKIE, um array associativo onde suas 
chaves são os nomes dados durante a criação do Cookie 
 Pode-se definir parâmetros de data e hora (tempo) que essa 
informação irá expirar. (Se não definir o tempo 
indeterminado)
exemplo_cookie.php
Como encontrá-lo no navegador 
 Chrome: Configurações > configurações avançadas > 
privacidade > Configurações de conteúdo > Todos os 
cookies e dados de sites > pesquisar por localhost 
 Frefox: Ferramentas > Opções > Privacidade > excluir 
cookies em Particular > localhot
Note que a partir da versão 5.3.10 do PHP 
o array HTTP_COOKIE_VARS 
Foi substituído apenas por $_COOKIE 
meucookie.php
Sessão 
 Informações ficam armazenadas no servidor 
 Session é um tipo único de variável, que uma vez criada 
existe até que o browser seja fechado. 
 Ela é única por browser e por usuário 
 Pode ser acessada em qualquer página PHP, dentro de 
qualquer método ou função (em PHP é uma variável 
Superglobal – ou seja disponível em todos os escopos do 
código PHP-) 
 Para situações onde há a necessidade de que a informação 
seja mantida, mas não por tempo suficiente que justifique 
seu armazenamento em banco de dados ou Cookies 
 Informações sobre o usuário que está logado
Utilizando Session em nossa página 
 Session para o PHP é uma variável do tipo array 
associativo, composto por chaves e valores 
 Acessível através da variável $_SESSION[‘ ’] 
 Adicionamos um valor à Session e atribuímos um 
nome (chave/índice) para que possamos acessar este 
valor posteriormente 
$_SESSION[‘chave’ ] = valor; 
$_SESSION[‘login’] = $_POST[‘login’];
sessao.php 
criando _sessao.php apagando_sessao.php
Teste se usuário esta logado. 
Testando retorno sessao.php 
logado.php
sessao1.php e sessao2.php 
 Devido as recentes atualizações nas versões do PHP as funções 
session_is_registered() e session_unregister() estão OBSOLETAS, 
porém isso não impede seu funcionamento até a versão 5.4.0 do PHP. 
O indicado é utilizar as funções isset() e unset() respectivamente 
para substituí-las, pois elas tem esse mesmo propósito. 
 Algo comum na linguagem de programação PHP é a atualização de 
alguns códigos. O PHP avisa através da mensagem DEPRECATED. 
Isso não é ruim, pois possibilitando a manutenção desse código, 
sempre irá gerar emprego para programadores dessa linguagem. 
sessao3.php e sessao4.php 
Baixe os arquivos da plataforma, veja a diferença no código-fonte e teste em localhost

Mais conteúdo relacionado

Mais procurados

Aula 1 aed - lógica de programação
Aula 1   aed - lógica de programaçãoAula 1   aed - lógica de programação
Aula 1 aed - lógica de programação
Elaine Cecília Gatto
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
apolllorj
 
Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 2
Desenvolvimento de aplicações para dispositivos móveis   módulo i - aula 2Desenvolvimento de aplicações para dispositivos móveis   módulo i - aula 2
Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 2
Carlos Eugenio Torres
 

Mais procurados (20)

Revisão Sobre Programação Orientada a Objetos com Java
Revisão Sobre Programação Orientada a Objetos com Java Revisão Sobre Programação Orientada a Objetos com Java
Revisão Sobre Programação Orientada a Objetos com Java
 
js.pdf
js.pdfjs.pdf
js.pdf
 
Aula 1 aed - lógica de programação
Aula 1   aed - lógica de programaçãoAula 1   aed - lógica de programação
Aula 1 aed - lógica de programação
 
Introdução a Linguagem de Programação PHP
Introdução a Linguagem de Programação PHPIntrodução a Linguagem de Programação PHP
Introdução a Linguagem de Programação PHP
 
POO - 16 - Polimorfismo
POO - 16 - PolimorfismoPOO - 16 - Polimorfismo
POO - 16 - Polimorfismo
 
Interfaces e polimorfismo
Interfaces e polimorfismoInterfaces e polimorfismo
Interfaces e polimorfismo
 
Curso JavaScript - Aula sobre DOM e Ajax
Curso JavaScript - Aula sobre DOM e AjaxCurso JavaScript - Aula sobre DOM e Ajax
Curso JavaScript - Aula sobre DOM e Ajax
 
Linguagem C - Vetores, Matrizes e Funções
Linguagem C - Vetores, Matrizes e FunçõesLinguagem C - Vetores, Matrizes e Funções
Linguagem C - Vetores, Matrizes e Funções
 
Linguagem PHP
Linguagem PHPLinguagem PHP
Linguagem PHP
 
Introdução ao estudo de Arquitetura de Computadores - (baseado em Stallings, ...
Introdução ao estudo de Arquitetura de Computadores - (baseado em Stallings, ...Introdução ao estudo de Arquitetura de Computadores - (baseado em Stallings, ...
Introdução ao estudo de Arquitetura de Computadores - (baseado em Stallings, ...
 
Uml
UmlUml
Uml
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
 
Introdução ao MySQL
Introdução ao MySQLIntrodução ao MySQL
Introdução ao MySQL
 
Web Design Responsivo
Web Design ResponsivoWeb Design Responsivo
Web Design Responsivo
 
Fundamentos de arquitetura Web
Fundamentos de arquitetura WebFundamentos de arquitetura Web
Fundamentos de arquitetura Web
 
Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 2
Desenvolvimento de aplicações para dispositivos móveis   módulo i - aula 2Desenvolvimento de aplicações para dispositivos móveis   módulo i - aula 2
Desenvolvimento de aplicações para dispositivos móveis módulo i - aula 2
 
Bancode dados modelagem conceitual
Bancode dados modelagem conceitualBancode dados modelagem conceitual
Bancode dados modelagem conceitual
 
Lista de exercícios em Bash (resolvida)
Lista de exercícios em Bash (resolvida) Lista de exercícios em Bash (resolvida)
Lista de exercícios em Bash (resolvida)
 
PHP - Introdução
PHP - IntroduçãoPHP - Introdução
PHP - Introdução
 

Destaque

Aula 11 - Controle de sessão em PHP - Programação Web
Aula 11  - Controle de sessão em PHP - Programação WebAula 11  - Controle de sessão em PHP - Programação Web
Aula 11 - Controle de sessão em PHP - Programação Web
Dalton Martins
 
Serversidephp pptx2-120418140114-phpapp01
Serversidephp pptx2-120418140114-phpapp01Serversidephp pptx2-120418140114-phpapp01
Serversidephp pptx2-120418140114-phpapp01
joaocarlobarros
 
Palestra Flisol 2012 - Campinas
Palestra Flisol 2012 - CampinasPalestra Flisol 2012 - Campinas
Palestra Flisol 2012 - Campinas
Anderson de Castro
 
Como implementar APIs RESTful em PHP
Como implementar APIs RESTful em PHPComo implementar APIs RESTful em PHP
Como implementar APIs RESTful em PHP
Pablo Aguiar
 
Construindo uma Rede Social com PHP e Software Livre
Construindo uma Rede Social com PHP e Software LivreConstruindo uma Rede Social com PHP e Software Livre
Construindo uma Rede Social com PHP e Software Livre
Elton Minetto
 
Consuming RESTful services in PHP
Consuming RESTful services in PHPConsuming RESTful services in PHP
Consuming RESTful services in PHP
Zoran Jeremic
 
Consumindo dados via web service no android
Consumindo dados via web service no androidConsumindo dados via web service no android
Consumindo dados via web service no android
Alexandre Antunes
 

Destaque (20)

Aula 11 - Controle de sessão em PHP - Programação Web
Aula 11  - Controle de sessão em PHP - Programação WebAula 11  - Controle de sessão em PHP - Programação Web
Aula 11 - Controle de sessão em PHP - Programação Web
 
Sessions in php
Sessions in php Sessions in php
Sessions in php
 
Serversidephp pptx2-120418140114-phpapp01
Serversidephp pptx2-120418140114-phpapp01Serversidephp pptx2-120418140114-phpapp01
Serversidephp pptx2-120418140114-phpapp01
 
Strings, Arrays e Manipulação Datas em PHP
Strings, Arrays e Manipulação Datas em PHPStrings, Arrays e Manipulação Datas em PHP
Strings, Arrays e Manipulação Datas em PHP
 
Palestra Flisol 2012 - Campinas
Palestra Flisol 2012 - CampinasPalestra Flisol 2012 - Campinas
Palestra Flisol 2012 - Campinas
 
Slides
SlidesSlides
Slides
 
Php 05 Mvc
Php 05 MvcPhp 05 Mvc
Php 05 Mvc
 
Test-Driven Development with PHP
Test-Driven Development with PHPTest-Driven Development with PHP
Test-Driven Development with PHP
 
Criando e consumindo webservice REST com PHP e JSON
Criando e consumindo webservice REST com PHP e JSONCriando e consumindo webservice REST com PHP e JSON
Criando e consumindo webservice REST com PHP e JSON
 
Variaveis Superglobais
Variaveis SuperglobaisVariaveis Superglobais
Variaveis Superglobais
 
Desenvolvimento Mobile Web usando PHP
Desenvolvimento Mobile Web usando PHPDesenvolvimento Mobile Web usando PHP
Desenvolvimento Mobile Web usando PHP
 
Web Service and PHP, REST and SOAP
Web Service and PHP, REST and SOAPWeb Service and PHP, REST and SOAP
Web Service and PHP, REST and SOAP
 
Como implementar APIs RESTful em PHP
Como implementar APIs RESTful em PHPComo implementar APIs RESTful em PHP
Como implementar APIs RESTful em PHP
 
Construindo uma Rede Social com PHP e Software Livre
Construindo uma Rede Social com PHP e Software LivreConstruindo uma Rede Social com PHP e Software Livre
Construindo uma Rede Social com PHP e Software Livre
 
php4android: desenvolva aplicações android em PHP
php4android: desenvolva aplicações android em PHPphp4android: desenvolva aplicações android em PHP
php4android: desenvolva aplicações android em PHP
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Servicio y Consumo de Servicios REST en PHP
Servicio y Consumo de Servicios REST en PHPServicio y Consumo de Servicios REST en PHP
Servicio y Consumo de Servicios REST en PHP
 
Consuming RESTful services in PHP
Consuming RESTful services in PHPConsuming RESTful services in PHP
Consuming RESTful services in PHP
 
Rest api design by george reese
Rest api design by george reeseRest api design by george reese
Rest api design by george reese
 
Consumindo dados via web service no android
Consumindo dados via web service no androidConsumindo dados via web service no android
Consumindo dados via web service no android
 

Semelhante a Aula 5 - Cookies e Sessões em PHP

Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
Regis Magalhães
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
Regis Magalhães
 

Semelhante a Aula 5 - Cookies e Sessões em PHP (20)

Aula 5 - Cookies e sessões em PHP
Aula 5 - Cookies e sessões em PHPAula 5 - Cookies e sessões em PHP
Aula 5 - Cookies e sessões em PHP
 
Aula 5 - Cookies e Sessões em PHP
Aula 5 - Cookies e Sessões em PHPAula 5 - Cookies e Sessões em PHP
Aula 5 - Cookies e Sessões em PHP
 
Aula 5
Aula 5Aula 5
Aula 5
 
[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
 
Sessao
SessaoSessao
Sessao
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
 
Sessões
SessõesSessões
Sessões
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
 
Cakephp 2.0 - O que mudou
Cakephp 2.0 - O que mudouCakephp 2.0 - O que mudou
Cakephp 2.0 - O que mudou
 
03 - Aplicações web com ASP.net v1.0
03 - Aplicações web com ASP.net v1.003 - Aplicações web com ASP.net v1.0
03 - Aplicações web com ASP.net v1.0
 
PHP MySQL Aula 08
PHP MySQL Aula 08PHP MySQL Aula 08
PHP MySQL Aula 08
 
Php12
Php12Php12
Php12
 
Slide 01 introdução ao php e ao code igniter
Slide 01   introdução ao php e ao code igniterSlide 01   introdução ao php e ao code igniter
Slide 01 introdução ao php e ao code igniter
 
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
 
Bloco 5.4
Bloco 5.4Bloco 5.4
Bloco 5.4
 
Sistema php
Sistema phpSistema php
Sistema php
 
Palestra
PalestraPalestra
Palestra
 
Explorando mecanismos autenticacao na web
Explorando mecanismos autenticacao na webExplorando mecanismos autenticacao na web
Explorando mecanismos autenticacao na web
 
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
 
Desenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPDesenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHP
 

Último

Último (9)

Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 

Aula 5 - Cookies e Sessões em PHP

  • 1. Aula 5  Cookies e Sessões  Metas  Criar e utilizar cookies e sessões na linguagem PHP.  Pré-requisitos  Lógica de Programação e HTML;  Linguagens de Programação I.  Objetivos  Conhecer os principais conceitos relacionados com os cookies e as sessões;  Aprender a criar cookies e sessões em PHP;  Entender a implementação destes recursos em PHP.
  • 2. Para que servem Cookies e Sessões?  O protocolo HTTP é stateless, ou seja, ele não mantém um estado/conexão. Toda a interação que o seu cliente fizer com um servidorWeb acarretará em uma nova requisição e resposta.  As requisições são independentes e possuem um tempo de vida (conexão, envio de mensagem, resposta, encerramento da conexão). O servidorWeb não é capaz de identificar se duas requisições vieram de um mesmo navegador, e o mesmo não faz nenhum gerenciamento em memória para que mensagens sejam compartilhadas entre requisições.  É para suprir esta necessidade que entram os cookies e sessões
  • 3. Cookies  Utilizado para armazenar informações no computador/máquina do usuário/cliente mesmo que o navegador seja fechado sem o uso de um banco de dados.  Preferências de usuário também utilizam Cookies  Através de cookies o servidorWeb é capaz de trocar informações de estado com o navegador do usuário. Desse modo, somos capazes de adicionar produtos a um carrinho de compras, sem perder estas informações ao mudar de página, sair do website ou até mesmo fechar o navegador.
  • 4. Uso de Cookies em PHP  O uso de Cookies em PHP envolve basicamente dois passos: 1. Criar o Cookie 2. Recuperar o valor do Cookie  Na criação do cookie indicamos qual informação será salva (deve ser uma String) e criamos um identificador para referenciá-la int setCookie(“nome”, “valor”, tempo_expiração); Nome e valor são obrigátorios  Uma vez definido o Cookie podemos referenciá-lo através da super global $_COOKIE, um array associativo onde suas chaves são os nomes dados durante a criação do Cookie  Pode-se definir parâmetros de data e hora (tempo) que essa informação irá expirar. (Se não definir o tempo indeterminado)
  • 6. Como encontrá-lo no navegador  Chrome: Configurações > configurações avançadas > privacidade > Configurações de conteúdo > Todos os cookies e dados de sites > pesquisar por localhost  Frefox: Ferramentas > Opções > Privacidade > excluir cookies em Particular > localhot
  • 7. Note que a partir da versão 5.3.10 do PHP o array HTTP_COOKIE_VARS Foi substituído apenas por $_COOKIE meucookie.php
  • 8. Sessão  Informações ficam armazenadas no servidor  Session é um tipo único de variável, que uma vez criada existe até que o browser seja fechado.  Ela é única por browser e por usuário  Pode ser acessada em qualquer página PHP, dentro de qualquer método ou função (em PHP é uma variável Superglobal – ou seja disponível em todos os escopos do código PHP-)  Para situações onde há a necessidade de que a informação seja mantida, mas não por tempo suficiente que justifique seu armazenamento em banco de dados ou Cookies  Informações sobre o usuário que está logado
  • 9. Utilizando Session em nossa página  Session para o PHP é uma variável do tipo array associativo, composto por chaves e valores  Acessível através da variável $_SESSION[‘ ’]  Adicionamos um valor à Session e atribuímos um nome (chave/índice) para que possamos acessar este valor posteriormente $_SESSION[‘chave’ ] = valor; $_SESSION[‘login’] = $_POST[‘login’];
  • 10. sessao.php criando _sessao.php apagando_sessao.php
  • 11. Teste se usuário esta logado. Testando retorno sessao.php logado.php
  • 12. sessao1.php e sessao2.php  Devido as recentes atualizações nas versões do PHP as funções session_is_registered() e session_unregister() estão OBSOLETAS, porém isso não impede seu funcionamento até a versão 5.4.0 do PHP. O indicado é utilizar as funções isset() e unset() respectivamente para substituí-las, pois elas tem esse mesmo propósito.  Algo comum na linguagem de programação PHP é a atualização de alguns códigos. O PHP avisa através da mensagem DEPRECATED. Isso não é ruim, pois possibilitando a manutenção desse código, sempre irá gerar emprego para programadores dessa linguagem. sessao3.php e sessao4.php Baixe os arquivos da plataforma, veja a diferença no código-fonte e teste em localhost