Las cookies JavaScript y PHP

Cookies


JavaScript

Cada vez que nuestro ordenador pide una página a un servidor, este realiza una conexión nueva con el servidor, por lo cual, el servidor no tiene conocimiento de las anteriores acciones del visitante (Por ejemplo logins).

Para resolver eso, nació un tipo de archivo, llamado cookie, que se almacena en el ordenador del visitante y puede contener informacion sobre nuestros movimientos.

Así, una vez entramos a un servicio con nuestro nombre y contraseña, el servidor, nos suele identificar con un número al azar que es guardado en el servidor y enviado a la vez al usuario, de manera que con ese número, puede conocer nuestro nombre, contraseña...

Desde JavaScript, el proceso de escritura y borrado de una cookie es muy sencillo:

document.cookie="NOMBRE = VALOR; expires = FECHA"

Así por ejemplo podemos guardar una cookie llamada ID con valor 123456 con caducidad el 2 de Diciembre del 2009:

document.cookie="ID = 123456; expires = 2 Dec 2009 23:59:59 GMT"

Y para borrarla le definimos una fecha de caducidad por ejemplo de 1995.

En cambio para leer una cookie deberemos crear una función especial:

function leerCookie(nombre) {
   a = document.cookie.substring(document.cookie.indexOf(nombre + '=') + nombre.length + 1,document.cookie.length);
   if(a.indexOf(';') != -1)a = a.substring(0,a.indexOf(';'))
   return a;
}

A la que llamaremos desde:

alert(leerCookie('ID')) , document.write(leerCookie('ID'))...


PHP

Para usar cookies en PHP, tenemos que tener en cuenta que la cookie se envia antes de enviar la página, es decir, que enviaremos la cookie al navegador antes de enviar ningún caracter de la página o recibiremos un error.

La función que usaremos para enviar una cookie es setcookie, que funciona asi:

<?php
setcookie (nombre,valor,fecha);
?>

Donde 'nombre', será un identificador de la cookie que contendrá el texto indicado por 'valor' y que tendrá vigéncia hasta 'fecha'.

Vamos a hacer un ejemplo que incrementara el valor de una cookie cada vez que se visite cierta página:

<?php
$visitas = $_COOKIE["visitas"]+1;
setcookie ("visitas", $visitas, time () + 7*24*60*60);
echo "Nos has visitado $visitas veces";
?>

Vemos que accedemos al valor de la cookie 'visitas' con un array superglobal que almacena todas las cookies de la página y le sumamos 1:

<?
$visitas = $_COOKIE["visitas"]+1;
?>

Aunque dependiendo de la configuracion de PHP, podremos acceder a la cookie 'visitas' directamente con la variable $visitas:

<?php
$visitas++;
setcookie ("visitas", $visitas, time () + 7*24*60*60);
echo "Nos has visitado $visitas veces";
?>
Las cookies JavaScript y PHP
0 Puntos Score: 0/10
Visitas: 2003 Favoritos: 4
1 Comentarios Las cookies JavaScript y PHP
gracias amigo  
Para dejar un comentario Registrate! o.. eres ya usuario? Accede!