Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Sign in to follow this  
fo_11

Duvida apagar cookie

Recommended Posts

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*....
?>

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.