Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

fo_11

Duvida apagar cookie

Mensagens Recomendadas

fo_11

O objectivo é simples. Tenho de contar as vezes que um utilizador visita um certo site e quando atingir as 30 visitas devo eliminar a cookie e iniciar a contagem de novo.

A contagem está a ser efectuada com sucesso mas quando atinjo o numero superior a 30 não recomeça de novo. Alguém me pode ajudar?

Aqui fica a parte do script responsavel pela criação e eliminação do cookie:

<?php
if(isset($_COOKIE["cookietabelaclubes_1"]))
if(30<$_COOKIE["cookietabelaclubes_1"])
   setcookie("cookietabelaclubes_1","",time()-3600);      //eliminar o cookie basta inserir um tempo de validade na hora atrás em que se encontra o utuilizador
   
setcookie("cookietabelaclubes_1",++$_COOKIE["cookietabelaclubes_1"],time()+3600);        //o tempo de validade da cookie é colocado sempre em segundo para colocar dias até expirar basta efectuar a conversao 24*60*60*....
?>

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
IceBrain

"Eliminar uma cookie" é simplesmente volta a defini-la com um tempo já expirado. No entanto, essa eliminação só acontece no browser, por isso mesmo depois de correr a "eliminação" a array $_COOKIE não é afectada (mantém os valores que recebeu do browser).

O que tu queres não é eliminar a cookie (visto que a vais recriar logo a seguir), simplesmente tens que a definir a zero.

<?php
if(!isset($_COOKIE["cookietabelaclubes_1"]) || $_COOKIE["cookietabelaclubes_1"] > 30)
    $novacookie = 0;
else 
    $novacookie = $_COOKIE["cookietabelaclubes_1"];
   
setcookie("cookietabelaclubes_1", ++$novacookie, time()+3600);        //o tempo de validade da cookie é colocado sempre em segundo para colocar dias até expirar basta efectuar a conversao 24*60*60*....
?>


❝The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.❞- John Carmack on software patents

A list  of command line apps

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.