PHP: Cookies

Guardar cookies en con php puede ser la forma más factible para desarrollar según qué aplicaciones… como por ejemplo un carrito de la compra, y su uso – en este caso en PHP – es realmente fácil.

El primer paso para aprender a utilizarlas, seguramente sea ir a php.net y buscar cookie, pero como sé que a los principiantes es un paso básico que les cuesta intentaré ir recreando los pasos que se deberían seguir para aprender a usar algunas funciones, para así intentar enseñar además del uso de las cookies el correcto uso de Internet.
A día de hoy si vamos a php.net y buscamos cookie nos sale una lista de funciones, de las que por pura lógica podemos deducir que si queremos crear una cookie la función que necesitamos se llama setcookie, sabiendo eso, allá vamos.

Si miramos como se utiliza la función setcookie veremos algo como esto:

setcookie(string $name[,string $value[,int $expire[,string $path[,string $domain[,bool $secure[,bool $httponly]]]]]])

Puede parecer complejo, pero se puede simplificar mucho como se verá a continuación y como se puede ver en la misma php.net.
Por ejemplo para guardar una cookie con lo que sería un ejemplo práctico, podríamos utilizar esto:

setcookie ("TestCookie", $value, time () + 3600);

En este caso, la cookie se llamaría TestCookie, su valor sería el guardado en la variable $value y caducaría en 3600 segundos, que al cambio es una hora.

Para leer esta cookie y luego utilizarla en el script o simplemente mostrarla se puede hacer esto:

$cookie = $_COOKIE["TestCookie"]

Para borrar una cookie creo que no hay ninguna función – pero eso no significa que no se pueda hacer, sólo que hay que pensar un poco – aunque podemos hacerlo, y de hecho no es difícil… podríamos hacer algo así:

setcookie ("TestCookie", $value, time () + 1);

De esta manera “borraríamos” la cookie TestCookie. Lo pongo entre comillas por que no la borraríamos, pero se eliminaría ella sola cuando pasase un segundo, o mejor dicho, la borraría el navegador… de hecho, creo que podríamos quitar el +1 final y hacer que lo borrase al instante.

Por ejemplo para hacer un contador de visitas para un único usuario, podríamos hacer esto:

<?PHP
if(isset($_COOKIE["visitas"])){
   $visitas = $_COOKIE["visitas"]+1;
}else{
   $visitas = 1;
}
setcookie ("visitas", $visitas, time () + 7*24*60*60);
echo "Nos has visitado $visitas veces";
?>



Josep Viciana

Programador de 27 años con una década de experiencia como programador. interesado en el diseño, ilustración y nuevas tecnologías. Dedicado desde siempre a la programación Web y desde hace algunos años también a la móvil.

No hay comentarios


Puedes dejar el primero : )



Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *