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 servidor Web 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 servidor Web 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 servidor Web é 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 as diferença no código-fonte e teste em localhost

Aula 5 - Cookies e sessões em PHP

  • 1.
    Aula 5 Cookiese 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 servemCookies 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 servidor Web 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 servidor Web 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 paraarmazenar 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 servidor Web é 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 Cookiesem 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)
  • 5.
  • 6.
    Como encontrá-lo nonavegador 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 apartir 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 ficamarmazenadas 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 emnossa 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.phpapagando_sessao.php
  • 11.
    Teste se usuárioesta 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 as diferença no código-fonte e teste em localhost