Cookies
Una cookie es un par clave/valor que tiene una fecha de caducidad y un dominio de
validez que se guarda en el ordenador del usuario y se enva (a travs de una cabecera
HTTP especial) a cada pgina a la que pueda acceder.
Gracias a las cookies, puede identificarse con credenciales de seguridad un usuario que
accede a una pgina, o guardar los datos para su posterior recuperacin. Por ejemplo,
podramos guardar una cookie con un valor que indica la ltima pgina visualizada, para
redirigir al usuario a la ltima pgina mostrada si se conecta de nuevo.
La creacin de una cookie es una operacin muy simple que se puede hacer en PHP
utilizando ula funcin setcookie(). Esta funcin tiene un nmero variable de parmetros. En
orden:
El nombre de la cookie.
El valor de la cookie, que debe ser necesariamente un valor escalar (entero o una
cadena, una matriz no se puede guardar directamente)
Un nmero que indica la fecha de caducidad de la cookie. Si este nmero es 0 o
no se especifica, la cookie durar hasta que el usuario cierra su navegador. En el
caso de que el timestamp tenga una fecha anterior a la actual, se borrar la cookie.
El path de validez de la cookie.
El dominio de validez de la cookie.
Un parmetro booleano que indica si las cookies se transmitirn slo a travs de
una conexin seguraHTTPS.
Dado que la funcin setcookie() genera un encabezado HTTP de manera explcita, es
necesario en primer lugar que su uso no haya sido impreso (con echo, print o cualquier
otro mtodo de salida), de lo contrario se genera un error. Incluso una lnea en blanco al
principio del archivo antes de la etiqueta de apertura de PHP dar lugar a la generacin de
este error.
Algunos ejemplo de creacin de una cookie:
setcookie('prueba_cookie', 'valor de la cookie', /* dura por una
hora */ time() + 3600);
setcookie('prueba_2', 'adion'); // cookie que dura hasta que el
usuario cierre el navegador
Para eliminar una cookie, debe utilizar la misma funcin utilizando los mismos
parmetros utilizados en el proceso de la creacin, pero con el uso de una fecha anterior a
la actual.
setcookie ('prueba_cookie', ", time () - 3600);
Juan de la Torre Domingo
Curso Prctico de PHP
Una vez que se crea una cookie su valor ser accesible a travs de $ _COOKIE [$
nombre_cookie] en las siguientes pginas a la actual, en el supuesto de que la fecha de
vencimiento no haya pasado y que cumpla con las restricciones del dominio y carpeta.
Es una buena prctica no crear demasiadas cookies, ya que los navegadores tienen un
lmite relacionado con un dominio especfico y una carpeta especfica. En caso de tener
que mantener una gran cantidad de valores, lo mejor es guardarlos en una base de datos
o un archivo. Las cookies son fcilmente recuperables y de fcil lectura, por lo que es
importante no guardar informacin privada o vital, excepto con el correspondiente cifrado.
Juan de la Torre Domingo
Curso Prctico de PHP