Aula 5

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.

description

Cookies e Sessões. Cookies e Sessões. Cookies e Sessões. Cookies e Sessões. Cookies e Sessões. Cookies e Sessões.

Transcript of Aula 5

Page 1: Aula 5

Aula 5Cookies e Sessões

MetasCriar e utilizar cookies e sessões na linguagem PHP.

Pré-requisitosLógica de Programação e HTML;Linguagens de Programação I.

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

Page 2: Aula 5

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

Page 3: Aula 5

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

Page 4: Aula 5

Uso de Cookies em PHPO uso de Cookies em PHP envolve basicamente doispassos: 1. Criar o Cookie2. Recuperar o valor do Cookie

Na criação do cookie indicamos qual informação será salva(deve ser uma String) e criamos um identificador parareferenciá-laint setCookie(“nome”, “valor”, tempo_expiração); Nome e valor são obrigátorios

Uma vez definido o Cookie podemos referenciá-lo atravésda super global $_COOKIE, um array associativo onde suaschaves são os nomes dados durante a criação do CookiePode-se definir parâmetros de data e hora (tempo) que essa informação irá expirar. (Se não definir o tempo o Cookieexpira quando terminar a sessão de navegação )

Page 5: Aula 5

exemplo_cookie.php

Page 6: Aula 5

Como encontrá-lo no navegadorChrome: 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

Page 7: Aula 5

meucookie.php

Note que a partir da versão 5.3.10 do PHP o array HTTP_COOKIE_VARSFoi substituído apenas por $_COOKIE

Page 8: Aula 5

SessãoInformaçõ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ávelSuperglobal – ou seja disponível em todos os escopos do código PHP-)

Para situações onde há a necessidade de que a informaçãoseja mantida, mas não por tempo suficiente que justifiqueseu armazenamento em banco de dados ou Cookies

Informações sobre o usuário que está logado

Page 9: Aula 5

Utilizando Session em nossa páginaSession 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 estevalor posteriormente

$_SESSION[‘chave’ ] = valor;

$_SESSION[‘login’] = $_POST[‘login’];

Page 10: Aula 5

sessao1.php e sessao2.phpDevido as recentes atualizações nas versões do PHP as funçõessession_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 parasubstituí-las, pois elas tem esse mesmo propósito.

Algo comum na linguagem de programação PHP é a atualização dealguns códigos. O PHP avisa através da mensagem DEPRECATED. Issoé bom, pois possibilitando a manutenção desse código, sempre irágerar emprego para programadores dessa linguagem.

sessao3.php e sessao4.phpBaixe os arquivos da plataforma, veja as diferenças no código-fonte e teste em localhost

Page 11: Aula 5

sessao.php

criando _sessao.php apagando_sessao.php

Page 12: Aula 5

Teste se usuário esta logado.

Testando retorno sessao.php

logado.php