Você está na página 1de 4

Aula 12 - Cookies e Sessões http://alunos.brunoavila.com.br/index.php/php-para-web-desi...

Haline Maria
Arantes
Você está cursando php para web designers ALUNOS

Cookies e Sessões Bruno Ávila


Veja mais:

Na última aula aprendemos a criar uma página de cadastro de Aula 12 - Cookies e Sessões
usuário com login e senha, ainda mais criptografado. Realmente Usuário cadastrando ele mesmo!

Ver Perfil
um luxo! Mas hoje percebemos que esse sistema pode tomar Arquivos finais da aula Haline Maria
Editar Perfil
corpo, ficar maior, com mais páginas e assim a autenticação Solução - Exercício do Tio Ronaldo Arantes
http ser insuficiente. Isso porquê o servidor web vê cada Todas as Páginas
Desconectar solicitação de página sem o contexto de outras requisições e
por isso não pode lembrar os dados entre as requisições.
MEUS CURSOS Milton
Além disso toda hora as freguesas de Astrogildo terão que ficar colocando senha e login por diversas Francisco
PHP para Web
vezes, quando o navegador pedir. Primo Brito
Meira
Designers Precisamos de uma forma de manter o login e senha acionado entre as páginas até mesmo quando
saimos por alguns minutos do site e voltamos logo depois.

Home Como eu sou um resolvedor de problemas, cá estou com a solução. Tenho duas figuras para Ingrid Castro
apresentar para vocês, primeiro conheçam o cookie!
Fórum

Perfil

Apostila PHP para Web Alessandro da


Designers Silva Lima

Anderson
Barboza da
silva

Zaíra G.

Analisando um Cookie
Com esse rapaz aí você pode rastrear certos detalhes de usuários, como o número de visitas, nomes,
datas, etc. Cookie nada mais é do que um pequeno arquivo de dados que pode ter no máximo 4kb.
Esse pequeno arquivo é enviado para o navegador do usuário e fica gravado no seu computador. Assim
é possível passar informações entre as páginas do site sem necessidade de sempre fazer uma
requisição ao servidor.

Ao contrário de uma variável, um cookie pode ter uma data de expiração. Quando chega esta data de
expiração, o cookie é destruído. Assim, os cookies não são exatamente imortais, eles só "vivem mais"
do que as variáveis do PHP. Você pode criar um cookie sem uma data de validade, caso em que ele

1 de 4 04/12/12 01:59
Aula 12 - Cookies e Sessões http://alunos.brunoavila.com.br/index.php/php-para-web-desi...

atua apenas como uma variável PHP porém não adianta, ele é destruído quando o navegador fecha.

Cookies gotas crocantes de PHP


O PHP nos fornece acesso aos cookies através de uma função chamada setcookie () e um superglobal
chamado $ _COOKIE. A função setcookie () é usada para criar o cookie, definindoo valor e data de
vencimento de um cookie e o superglobal $ _COOKIE é usado para recuperar o valor de um cookie.

O poder do uso do cookie é que seus dados persistem em vários scripts, para que possamos lembrar o
nome de usuário sem a necessidade de efetuar login novamente sempre que passar de uma página
para outra dentro do mesmo site. Mas não se esqueça, também precisamos de arrumar o ID do usuário
em um cookie, pois serve como uma chave primária para consultas de banco de dados.

A função setcookie () também aceita um terceiro argumento opcional que define a data de expiração do
cookie, que é a data em que o cookie é automaticamente eliminado. Se você não especificar uma
expiração, como no exemplo acima, o cookie expira automaticamente quando o
navegador for fechado.

Com Cookies, o Login muda


Se utilizarmos os cookies para potencializar nosso script de login, precisaremos ,udá-lo para receber
essas novas mudanças. O plano é o seguinte:

2 de 4 04/12/12 01:59
Aula 12 - Cookies e Sessões http://alunos.brunoavila.com.br/index.php/php-para-web-desi...

Pelo que você viu teremos que fazer algumas mudanças e também criar um novo arquivo, o logout.php.
Para isso Tio Bruno entra em ação em nosso primeiro vídeo de hoje. É com você fessô!

Autenticando através de sessões


Será que não existe uma forma de fazer a autenticação mas gravando os dados no servidor ao invés do
navegador?

Sim, através de sessões! Eles são equivalentes aos cookies, gravando temporariamente os dados de
login e continua lá podendo ser acessado pelo script e assim evitando ter que se logar repetidamente.

3 de 4 04/12/12 01:59
Aula 12 - Cookies e Sessões http://alunos.brunoavila.com.br/index.php/php-para-web-desi...

Além disso, permitem que sejam armazenados qualquer tipo de informação, assim como arrays e
certos tipos de resources. Outra coisa bacana das sessões é que valores podem ser alterados mesmo
depois do envio do HTML. É possível até agrupar sessões e gravá-las com outros nomes carregando
grupos diferentes de acordo com a necessidade.

Mas claro, existe um problema em utilizar a sessão que em alguns casos se faz preferir o cookie. Sim,
existe. Na sessão não tenho o controle de tempo de expiração como nos cookies. Na sessão basta
fechar o navegador que a sessão se perde e então é necessário logar de novo.

Iniciando uma sessão


Para iniciar uma sessão basta chamar pela função session_start(). Já para forçar o término de uma
sessão basta utilizar o session_destroy().

O melhor mesmo é ensinar como a sessão funciona na prática. Vamos ver isso na companhia do nosso
querido professor Bruno, é com você!

Arquivos finais da aula


Aqui estão os arquivos dessa aula, com tudo que foi mostrado e o resultado final.
Clique aqui para fazer o download de todos os arquivos dessa aula.

Solução - Exercício do Tio Ronaldo


Quer comparar os seus arquivos com o último exercício do Tio Ronaldo?
Clique aqui para fazer o download de todos os arquivos desse exercício.

4 de 4 04/12/12 01:59

Você também pode gostar