Breaking News

Trabalhando com Cookies no PHP


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: 

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

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! 

Erros 

Caso houve algum erro com o script entre em contato, mas , a idéia é essa mesma, se tiver dúvida é só falar! flw! 

Nenhum comentário

imagem de uma pessoa em frente a tela no notebook com a logo do serviço balcão virtual. Ao lado a frase indicando que o serviço