Gestionar Cookies con Javascript

Tanto en NiNaiz como en GuGara la mayoría de las páginas están cacheadas, es decir, cada vez que hay una petición de una página, en vez de ejecutarse todas las consultas a Bases de Datos y código PHP para generar la página, se muestra una página estática generada anteriormente.

Esa página sólo se volverá a generar de nuevo cuando haya algún cambio en ella.

Ésto permite no sobrecargar el servidor con un montón de consulas, con el riesgo de que el proveedor de Hosting me cancele la cuenta.

Éste sistema de cacheo no me permite gestionar las cookies desde el servidos (con PHP), ya que las páginas están creadas anteriormente, con lo que para poder tener un sistema para recordar datos en los Formularios he tenido que hechar mano de Javascript.

Javascript es un lenguaje que se ejecuta en el navegador del cliente y que tiene problemas de accesibilidad, ya que mucha gente no lo tiene instalado en su navegador o utilizan navegadores que no lo soportan (Lynx), en éste caso como no afecta a la navegación, es decir, el sitio funciona perfectamente, lo único que si no se tiene Javascript no recordará los datos introducidos en el formulario.

Para ello he utilizado 2 funciones, la primerar getCookie es una función muy utilizada y explicada en muchos sitios de Internet que lo que hace es darte el valor de la cookie que le pases como name.

<SCRIPT LANGUAGE="JavaScript">
function getCookie(name) {
var dc = document.cookie;
var prefix = name + "=";
var begin = dc.indexOf("; " + prefix);
if (begin == -1) {
begin = dc.indexOf(prefix);
if (begin != 0) return null;
} else {
begin += 2;
}
var end = document.cookie.indexOf(";", begin);
if (end == -1) {
end = dc.length;
}
return unescape(dc.substring(begin + prefix.length, end));
}

La segunda función lo que hace es cojer el valor de la cookie (llamando a la función getCookie) y si hay algún valor lo inserta en input correspondiente del formulario (nombre, correo o web) y además activa el checkbox de Recordar datos.


function insertarCookie() {
var nombre = getCookie('blog_nombre');
var correo = getCookie('blog_correo');
var web = getCookie('blog_web');
document.EscribirComent.nombre.value = nombre;
document.EscribirComent.correo.value = correo;
document.EscribirComent.web.value = web;
if ((correo!=null) || (nombre!=null) || (web!=null)) {
document.EscribirComent.recordar.checked=1;
} else {
document.EscribirComent.recordar.checked=0;
}
if (nombre==null) document.EscribirComent.nombre.value = '';
if (correo==null) document.EscribirComent.correo.value = '';
if (web==null) document.EscribirComent.web.value = '';

}
</SCRIPT>

Luego lo único que hay que hacer es indicar que se ejecute la función cuando se cargue la página.


<body onload='insertarCookie()'>

Las cookies se graban cuando se realiza la inserción del comentario, mediante PHP.

Esta entrada fue publicada en Trucos. Guarda el enlace permanente.

4 respuestas a Gestionar Cookies con Javascript

  1. marco dijo:

    gracias te ma chekado

  2. Rokito Wonito dijo:

    primeras!! jajaja Atte: Rokito Wonito.

  3. Miriam dijo:

    gracias te ma chekado

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s