1-PHP Introdução
Exercícios
Curso Banco Dados
IntroducaoBD.php
Curso de PHP
 

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
Nas seções seguintes veremos essas alternativas. De todas elas dedicaremos mais atenção à utilização das sessões.

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)