Terça-Feira, 07 de Setembro de 2010

  Procurar por: Em:  

Confira nossas seções disponíveis!

 

 
 
 
 
 
 
 
 
 
 


Uso de cookies no PHP

Enviado por Clenisson Calaça,
em 13/10/05 às 12:50
Artigo ensinando a trabalhar cookies com PHP.

3141 cliques.


Há quase duas semanas, foi postado um artigo sobre o uso de SESSIONS no PHP (http://www.pontophp.com/artigos.php?act=ler&id=11).

Agora, é a vez de mostrar como se faz o uso dos famosos cookies.
---------
Por Rafael Gontijo Hamdan

E ai, galera? todo mundo blza? hoje vou ensinar a todos a mexerem com COOKIES, os famosos arquivos-espiões, utilizando PHP, claro.

Vamos começar:

O que são cookies?

- Cookies são arquivos-texto (espiões) que são abertos (criados) no computador de usuários para se recuperar dados de qualquer página, os cookies podem ser vistos pelos donos das máquinas, e ser editado (possivelmente) por eles, mas, isso não é um grande problema pois podemos (pelo PHP) ver se os cookies são válidos (caso queiramos validá-los), o problema é que existem navegadores como o IE e o NetsCape que proibem a entrada destes arquivos em um computador, o ideal seria o uso de Sessions mesmo com suas desvantagens

O que podemos fazer com o cookies?

- Com os cookies pode ser feito "TUDO" que sua imaginação permitir, mas as principais causas que eles são utilizadas são:

- Verificar se um usuário já logou no site (isto é, validar se o cookie existe no computador)
- Verificar se um usuário já votou na enquete do site ( || )
- Carrinho de compras para armazenar os produtos comprados

Criando cookies com o php

- Criar um cookie com o php é muito simples, a sintaxe básica da criação é:

setcookie("nome_do_cookie", "valor_do_cookie");

Lembrando que este trecho deve estar no inicio do código da página, até mesmo antes de TAGS HTML.

O cookie criado será "excluído" automaticamente, ao se fechar o Browser

Para criar um cookie válido por 48 horas fazemos:

<?
setcookie("usuário", $user, time()+172800);
?>


O cookie criado tem o nome de Usuário com o valor $user, que seria Rafael (vamos supor que tenha o valor de rafael) e será excluído depois de 48 horas que ficar no computador do usuário (48 horas são iguais a 172800 segundos), mesmo com o fechamento do browser!


Excluindo um cookie com php

- Para se excluir um cookie com PHP antes do tempo determinado ou antes do fechamento do browser, fazemos o seguinte (supondo que queremos excluir o cookie usuário):

setcookie("usuário");

O comando setcookie também exclui um cookie, mas para exluir-mos devemos colocar somente o nome do cookie e não o seu valor, por isso tome cuidado, se quiser criar um cookie NULO (sem valor) fazemos o seguinte:

setcookie("usuário", "");

Seria criado o cookie usuário com o valor nulo!

Podemos também excluir um cookie por uma variável (para se excluir um cookie também deve estar no topo da pagina o setcookie) por exemplo, vamos dar o nome cookie pra um campo de texto, o usuário digita no campo "uusário" para deletar-mos o cookie com o nome digitado no campo fazemos o seguinte:

setcookie($usuario);

Simples, não?

Abrindo cookies com o PHP

- Para abrir um cookie no PHP usamos o array superglobal $_COOKIE, entre chaves e aspas o nome do cookie! para ler-mos um cookie (com o nome idade, supondo que ele tenha o valor 21) fazemos o seguinte:

$_COOKIE["idade"];

Para exibir o conteudo dele com php fazemos:

<?
echo "O valor do cookie é:" . $_COOKIE["idade"];
?>


OU

<?
echo $_COOKIE["idade"];
?>


Isso seria útil para ver se uma senha estivesse de acordo com o usuário ou se existe um registro em um banco de dados ou file TXT com a idade 21!

Verificando se um cookie existe

- A sintaxe para descobrir se um cookie existe é a segiunte:

if(isset($_COOKIE["nome"]))

Para verificar-mos se um cookie existe com php fazemos:

<?
$nome_do_cookie = "nome";
if(isset($_COOKIE[$nome_do_cookie]))
{
echo "O cookie $nome_do_cookie existe! ";
}
else
{
echo "O cookie $nome_do_cookie não existe!";
}
?>


Se o cookie não existisse seria mostrada a mensagem: O cookie nome não existe, e se existisse apareceria: O cookie nome não existe!

Criando cookies com caminho, dominio e seguro

- Para se criar um cookie com o nome IDADE com segurança (a página deve ser HTTPS e no cookie deve ter um valor 1), com um caminho específico do dominio que o cookie estará válido, e um domínio específico, válido por 48 horas fazemos:

setcookie("idade", "21", time()+172800, "/dir", "www.google.com.br", "1");

Criamos um cookie com o nome "idade" com o valor 21 válido por 48 horas, válido somente para o diretório /dir com o domínio google e com uma conexão segura (melhor, pois o IE aceita mais cookies seguros), pois utilizamos o valor 1 que indica que o cookie é seguro se fosse utilzado 0 ele seria inseguro, isso seria muito útil caso quisesse enviar cookies seguros com HTTPS ou cookies válidos só para o diretório "user" por exemplo!

Comentar - Ver comentários (0)

Usuário:  
Senha:  

Esqueci a senha.
Quero me cadastrar.

Melhor visualizado no Internet Explorer.
© 2005-2008 Ponto PHP - Programado e Mantido por Clenisson Calaça.
Design by
Agência Blá. Hospedado por MR Media.
Sugestões, reclamações, erros ou dúvidas sobre o site: contato@pontophp.com.