Aproximación usando cookies

Otra aproximación al control de sesiones es utilizar un identificador único, como en el caso anterior, pero realizar la gestión del identificador creando o comprobando la existencia de una cookie.

El servidor, en lugar de enviar/recibir la información del identificador en los parámetros de la URL (y asignar un nuevo identificador si no llega ninguno), comprueba la existencia de una cookie en el cliente para decidir si estamos dentro de una sesión, o por el contrario, crea la cookie con el identificador y la envía al cliente para que la almacene.

// Si no esta la cookie mi_id
if ( !isset ( $_COOKIE['mi_id’] ) === true ) {
   /* Crearla con un identificador unico */
   $mi_id = generar_mi_id(); // ¡ojo! Funcion figurada
   setcookie ("mi_id", $mi_id);
}
else
   /* Recuperamos el valor de la cookie 'mi_id’ */
   $mi_id = $_COOKIE['mi_id'];

Como podemos observar en el código anterior, la lógica de comprobación empleada para saber si ya estamos en una sesión o empezamos una nueva, es similar al caso anterior.

Esta técnica, sin embargo, tiene algunas ventajas sobre la anterior. El mecanismo trabaja de forma transparente para el usuario (no se aprecia en las URL's en el navegador) y, más importante si cabe, el código que comprueba/crea la cookie puede estar centralizado en lugar de afectar a cada enlace o formulario.

¿Qué problemas presenta esta técnica?
Sólo uno. ¿El navegador del cliente soporta y/o acepta las cookies? Si queremos que nuestro sitio web sea accesible por la mayor cantidad posible de usuarios, no podemos presuponer que las cookies estarán siempre disponibles.

results matching ""

    No results matching ""