SlideShare a Scribd company logo
1 of 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

More Related Content

What's hot

Php 03 Sessoes Cookies Cabecalhos
Php 03 Sessoes Cookies CabecalhosPhp 03 Sessoes Cookies Cabecalhos
Php 03 Sessoes Cookies Cabecalhos
Regis Magalhães
 

What's hot (20)

Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScript
 
Chapter 02 php basic syntax
Chapter 02   php basic syntaxChapter 02   php basic syntax
Chapter 02 php basic syntax
 
Introdução a php
Introdução a phpIntrodução a php
Introdução a php
 
Basics PHP
Basics PHPBasics PHP
Basics PHP
 
Php 03 Sessoes Cookies Cabecalhos
Php 03 Sessoes Cookies CabecalhosPhp 03 Sessoes Cookies Cabecalhos
Php 03 Sessoes Cookies Cabecalhos
 
01 php - introdução ao php
01   php - introdução ao php01   php - introdução ao php
01 php - introdução ao php
 
Sql Injection Myths and Fallacies
Sql Injection Myths and FallaciesSql Injection Myths and Fallacies
Sql Injection Myths and Fallacies
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01
 
PHP SESSIONS & COOKIE.pptx
PHP SESSIONS & COOKIE.pptxPHP SESSIONS & COOKIE.pptx
PHP SESSIONS & COOKIE.pptx
 
PHP
PHPPHP
PHP
 
Aula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e PseudocódigoAula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e Pseudocódigo
 
10 Java Script - Exemplos práticos
10 Java Script - Exemplos práticos10 Java Script - Exemplos práticos
10 Java Script - Exemplos práticos
 
Php operators
Php operatorsPhp operators
Php operators
 
Aula 01 - JavaScript: Introdução
Aula 01 - JavaScript: IntroduçãoAula 01 - JavaScript: Introdução
Aula 01 - JavaScript: Introdução
 
Php with mysql ppt
Php with mysql pptPhp with mysql ppt
Php with mysql ppt
 
Javascript aula 01 - visão geral
Javascript   aula 01 - visão geralJavascript   aula 01 - visão geral
Javascript aula 01 - visão geral
 
Taller de PHP Básico
Taller de PHP BásicoTaller de PHP Básico
Taller de PHP Básico
 
Php introduction
Php introductionPhp introduction
Php introduction
 
ICC - Aula 05 - Estrutura de controle, sequencial e condicional
ICC - Aula 05 - Estrutura de controle, sequencial e condicionalICC - Aula 05 - Estrutura de controle, sequencial e condicional
ICC - Aula 05 - Estrutura de controle, sequencial e condicional
 
Curso CSS 3 - Aula Introdutória com conceitos básicos
Curso CSS 3 - Aula Introdutória com conceitos básicosCurso CSS 3 - Aula Introdutória com conceitos básicos
Curso CSS 3 - Aula Introdutória com conceitos básicos
 

Viewers also liked

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
 

Viewers also liked (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
 

Similar to 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
 

Similar to 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
 
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
 
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
 

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