Curso de Aplicaçoes WEB em PHP: 17. Utilizando cookies

Author: Ricardo Soares - Postado em: 07/09/2009
Relacionado as categorias: Guias e Tutoriais, Tecnologia, Diversos |  





O que são

Cookies são variáveis gravadas no cliente(browser) por um determinado site. Somente o site que gravou o cookie pode ler a informação contida nele. Este recurso é muito útil para que determinadas informações sejam fornecidas pelo usuário
apenas uma vez. Exemplos de utilização de cookies são sites que informam a quantidade de vezes que você já visitou, ou alguma informação fornecida numa visita anterior.

Existem cookies persistentes e cookies de sessão. Os persistentes são aqueles gravados em arquivo, e que permanecem após o browser ser fechado, e possuem data e hora de expiração. Os cookies de sessão não são armazenados em disco e permanecem ativos apenas enquanto a sessão do browser não for encerrada.

Por definição, existem algumas limitações para o uso de cookies, listadas a seguir:
1300 cookies no total
24 kilobytes por cookie.
320 cookies por servidor ou domínio.

Gravando cookies

Para gravar cookies no cliente, deve ser utilizada a função setcookie, que possui a seguinte assinatura:
int setcookie(string nome, string valor, int exp, string path, string dominio, int secure);

onde:
nome: nome do cookie;
valor: valor armazenado no cookie;
exp: data de expiração do cookie (opcional), no formato Unix. Se não for definida, o cookie será de sessão;
path: path do script que gravou o cookie;
dominio: domínio responsável pelo cookie;
secure: se tiver valor 1, indica que o cookie só pode ser transmitido por uma conexão segura (https).

Observações:
Um cookie não pode ser recuperado na mesma página que o gravou, a menos que esta seja recarregada pelo browser.
Múltiplas chamadas à função setcookie serão executadas em ordem inversa;
Cookies só podem ser gravados antes do envio de qualquer informação para o cliente. Portanto todas as chamadas à função setcookie devem ser feitas antes do envio de qualquer header ou texto.

Lendo cookies gravados

Os cookies lidos por um script PHP ficam armazenados em duas variáveis. no array $HTTP_COOKIE_VARS[], tendo como índice a string do nome do cookie, e numa variável cujo nome é o mesmo do cookie, precedido pelo símbolo $.

Exemplo:
Um cookie que foi gravado numa página anterior pelo seguinte comando:
setcookie(“teste”, “meu cookie”);
Pode ser lida pela variável $HTTP_COOKIE_VARS[“teste”] ou pela variável $teste













Comments

Leave a Reply






Últimos posts