SlideShare una empresa de 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 > pesquisar por localhost
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ças no código-fonte e teste em localhost

Más contenido relacionado

La actualidad más candente

Gerenciando senhas com o kee pass password safe
Gerenciando senhas com o kee pass password safeGerenciando senhas com o kee pass password safe
Gerenciando senhas com o kee pass password safe
Alberto Rocha
 
Lab so-abertos-unidade12
Lab so-abertos-unidade12Lab so-abertos-unidade12
Lab so-abertos-unidade12
Leandro Almeida
 
Framework Codeigniter - Sessão
Framework Codeigniter - SessãoFramework Codeigniter - Sessão
Framework Codeigniter - Sessão
Multside Digital
 
Sessões (in portuguese)
Sessões (in portuguese)Sessões (in portuguese)
Sessões (in portuguese)
Bruno Pedro
 
Progweb Aula8
Progweb Aula8Progweb Aula8
Progweb Aula8
softeam
 
Aula 09 - Instruções preparadas e otimização de consultas do Mysql - Program...
Aula 09  - Instruções preparadas e otimização de consultas do Mysql - Program...Aula 09  - Instruções preparadas e otimização de consultas do Mysql - Program...
Aula 09 - Instruções preparadas e otimização de consultas do Mysql - Program...
Dalton Martins
 

La actualidad más candente (20)

Aula 7_8-Upload e contador de acessos com PHP
Aula 7_8-Upload e contador de acessos com PHPAula 7_8-Upload e contador de acessos com PHP
Aula 7_8-Upload e contador de acessos com PHP
 
Programação web ii aulas 05 e 06
Programação web ii   aulas 05 e 06Programação web ii   aulas 05 e 06
Programação web ii aulas 05 e 06
 
Cookies
CookiesCookies
Cookies
 
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
 
Configurando banco de dados e ODBC - TOTVS Série 1 Manufatura
Configurando banco de dados e ODBC - TOTVS Série 1 ManufaturaConfigurando banco de dados e ODBC - TOTVS Série 1 Manufatura
Configurando banco de dados e ODBC - TOTVS Série 1 Manufatura
 
Gerenciando senhas com o kee pass password safe
Gerenciando senhas com o kee pass password safeGerenciando senhas com o kee pass password safe
Gerenciando senhas com o kee pass password safe
 
Novidades do Django 1.2 e o que vem por ai
Novidades do Django 1.2 e o que vem por aiNovidades do Django 1.2 e o que vem por ai
Novidades do Django 1.2 e o que vem por ai
 
Prog web 05-php-mysql
Prog web 05-php-mysqlProg web 05-php-mysql
Prog web 05-php-mysql
 
Bloco 5.4
Bloco 5.4Bloco 5.4
Bloco 5.4
 
Conteudo curso php
Conteudo curso phpConteudo curso php
Conteudo curso php
 
Php12
Php12Php12
Php12
 
Lab so-abertos-unidade12
Lab so-abertos-unidade12Lab so-abertos-unidade12
Lab so-abertos-unidade12
 
Framework Codeigniter - Sessão
Framework Codeigniter - SessãoFramework Codeigniter - Sessão
Framework Codeigniter - Sessão
 
Sessões (in portuguese)
Sessões (in portuguese)Sessões (in portuguese)
Sessões (in portuguese)
 
Drupal - Perfis de instalacao e Drush make
Drupal - Perfis de instalacao e Drush makeDrupal - Perfis de instalacao e Drush make
Drupal - Perfis de instalacao e Drush make
 
Progweb Aula8
Progweb Aula8Progweb Aula8
Progweb Aula8
 
PDO - PHP Data Object
PDO - PHP Data ObjectPDO - PHP Data Object
PDO - PHP Data Object
 
Encriptar é preciso - SQL Server
Encriptar é preciso - SQL ServerEncriptar é preciso - SQL Server
Encriptar é preciso - SQL Server
 
Aula 09 - Instruções preparadas e otimização de consultas do Mysql - Program...
Aula 09  - Instruções preparadas e otimização de consultas do Mysql - Program...Aula 09  - Instruções preparadas e otimização de consultas do Mysql - Program...
Aula 09 - Instruções preparadas e otimização de consultas do Mysql - Program...
 
Aprofunde se no php 5.3
Aprofunde se no php 5.3Aprofunde se no php 5.3
Aprofunde se no php 5.3
 

Similar 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
 

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

[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
 
Sessões
SessõesSessões
Sessões
 
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
 
Cakephp 2.0 - O que mudou
Cakephp 2.0 - O que mudouCakephp 2.0 - O que mudou
Cakephp 2.0 - O que mudou
 
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
 
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
 
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
 
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
 
Segurança autenticação apache -ppt
Segurança autenticação apache -pptSegurança autenticação apache -ppt
Segurança autenticação apache -ppt
 
[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...
 
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
 
Desenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPDesenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHP
 
Gestão automática de configuração usando puppet
Gestão automática de configuração usando puppetGestão automática de configuração usando puppet
Gestão automática de configuração usando puppet
 
PHP FrameWARks - CakePHP
PHP FrameWARks - CakePHPPHP FrameWARks - CakePHP
PHP FrameWARks - CakePHP
 
Desafio Rest API
Desafio Rest APIDesafio Rest API
Desafio Rest API
 
Crud
CrudCrud
Crud
 

Último

Último (8)

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

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 > pesquisar por localhost
  • 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 as diferenças no código-fonte e teste em localhost