|
|
5-Cookies
Objetivo: Estudar formas de passar parâmetros entre páginas. Trabalhar com Sessões
1. Introdução
No PHP Existem diferentes formas de passar dados entre páginas:- usando cookies
- usando formulários (e mais especificamente o tipo hidden)
- usando o comando header() e o método GET (enviando via um link)
- usando session
2. Cookies
Cookies são arquivos texto. Eles ficam armazenados no micro do usuário (cliente) quando o mesmo acessa uma home-page que tenha o comando de criação do cookie (seja em PHP, ou qualquer outro script).
Com o cookie é possível salvar informações do usuário e utilizá-las posteriormente.
2.1 Criando Cookies em PHP
Para se criar um cookie em PHP utiliza-se o comando
setcookie("nome_do_cookie", "valor_do_cookie");
ou ainda
setcookie("nome_do_cookie", "valor_do_cookie",duração);
Veja um exemplo de uma criação de cookie:
setcookie("TestCookie", $value, time()+3600); /* expira em uma hora */
Se quiser deletar o cookie, use uma data no passado.
setcookie("TestCookie", $value, time()-1000);
Podemos ainda ter cookies mais completos:
Exemplo 1-A
<?php
$value = 'alguma coisa de algum lugar';
setcookie("TesteCookie", $value, time()+3600); /* expira em 1 hora */
?>
para vermos o cookie gravado no exemplo acima usamos a variável $_COOKIE do PHP, como mostrado no exemplo a seguir.
Exemplo 1-B
<?php
// Exibe um cookie individual echo $_COOKIE["TesteCookie"]; echo "<hr>"; echo "usando print_r() <br>"; // Outra maneira de debugar/testar é visualizando todos os cookies
print_r($_COOKIE); echo "<hr>"; echo "usando var_dump() <br>"; var_dump($_COOKIE); ?>
Podemos ainda remover o cookie pelo PHP. Veja o exemplo abaixo
Exemplo 1-C
<?php
setcookie ("TesteCookie", "", time() - 3600);
?>
O exemplo a seguir ilustra a utilização do cookie como array
Exemplo 2
<?php
setcookie("cookie[tres]", "cookiethree");
setcookie("cookie[dois]", "cookietwo");
setcookie("cookie[um]", "cookieone");
?>
Para visualizar o cookie, rode o exemplo 2-B:
Exemplo 2-B
<?php
if (isset($_COOKIE['cookie'])) {
foreach ($_COOKIE['cookie'] as $name => $value) {
echo "$name : $value
\n";
}
}
?>
Veja alguns links com tutorias sobre cookies:
(voltar para o topo)