Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Promoción de webs | Rentabilidad de webs
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo

Más sobre cookies


Veamos unas notas adicionales sobre el uso de cookies, como crear colecciones y subcolecciones de ellas y cómo realizar listados genéricos.


01/1/70 - Ya hemos visto en el manual básico de ASP un capítulo dedicado a las cookies, que sería adecuado repasar para tener la base necesaria para poder entender este nuevo capítulo.

Las cookies están en una colección

Las cookies se guardan en una colección, al igual que muchas otras cosas en ASP. Podríamos acceder a todas las cookies de una página a través del bucle For Each.

<%
response.cookies ("id") = "Pepe"
response.cookies ("idioma") = "ing"
response.cookies ("color") = "verde"

cadena = ""
for each galleta in Request.cookies
   cadena = cadena & "Cookie " & galleta & ": " & Request.cookies(galleta) & "<br>"
next
response.write cadena
%>


En este ejemplo primero creamos unas cookies y luego hacemos un recorrido en la colección de cookies para mostrar su valor. Los valores de intermedios se guardan en una variable cadena por que es aconsejable no escribir nada en la página hasta no haber realizado todo el trabajo con las cookies. Una vez recorrido toda la colección se muestra la variable cadena en la página, que contiene todas las cookies de la página.

Probablemente te muestren una cookie más aparte de las que se acaban de crear, que es una cookie que se guarda en desarrolloweb para conservar la personalización del color que introdujo el usuario. Puedes ver este ejemplo.

Subclasificación de cookies

Para continuar, vamos a ver cómo se puede meter en una cookie un mayor número de datos a través de la subclasificación. Donde antes creabamos una cookie ahora aprenderemos a crear una subcolección de cookies.

<%
Response.cookies ("usuario")("id") = "eugim"
Response.cookies ("usuario")("idioma") = "esp"
Response.cookies ("usuario")("color") = "rojo"
%>


Se puede ver este ejemplo en funcionamiento

Si ahora volvemos a ver el listado de las cookies de este web podremos comprobar cómo se almacenan las cookies en una subcolección, con pares nombre=valor.

Bucle anidado para mostrar subcolección

Si deseamos mostrar las subcolecciones de una manera más bonita pondemos hacer un bucle anidado. El bucle más general sería el que va recorriendo las cookies de primer nivel. En cada iteración del bucle se preguntará si la cookie actual tiene subcookies. Si no tiene, escribe la cookie actual y continúa con la siguiente iteración. En caso de que hubiera subcookies, se mete en un bucle que muestra cada una de ellas. El código para hacer esto sería el siguiente.

<%
cadena = ""
for each galleta in request.cookies
   if request.cookies(galleta).HasKeys then
      for each subgalleta in request.cookies(galleta)
         cadena = cadena &"    " & subgalleta & ": " & request.cookies(galleta)(subgalleta) & "<br>"
      next
   else
      cadena = cadena & galleta & ": " & request.cookies(galleta) & "<br>"
   end if
next
response.write cadena
%>


La manera de trabajar con subclasificaciones es muy parecida a la de trabajar con matrices o arrays de 2 dimensiones. Podemos ver el resultado de este script.

Fecha de caducidad programada

Como se dijo en el capítulo de cookies básico, para que las galletitas se guarden en el ordenado una vez acabada la sesión durante un tiempo, hay que ponerles fecha de caducidad. Es muy útil ponerle una fecha de caducidad relativa a la fecha actual, por ejemplo 1 año más tarde, así cuando pase un tiempo, la página guardará las cookies más adelante en el tiempo también. Para ello vamos a utilizar una función de fecha que se llama DateAdd() y funciona conforme a este esquema.

DateAdd(intervalo, numero, fecha)

Intervalo es un string que reprenta las unidades sobre las que vas a añadir a la fecha. Por ejemplo meses se indica con "m", años con "yyyy", días con "d".
Numero se utiliza para indicar cuantos intervalos se añaden, 1 año, o 8 meses por ejemplo.
Fecha es la fecha a partir de la cual se añade el número de intervalos. Se suele utilizar en este parámetro la palabra Now que indica que se tome la fecha actual.

<%
response.cookies("id").expires = DateAdd("d",1,Now)
%>


En el ejemplo, la cookie caducaría en un día despué.

 Seguir navegando a partir aquí:
+ 1 manual relacionado
+ 2 categorias relacionadas

 Autoría, licencia y acciones sobre este artículo

Informe de Miguel Angel Alvarez*
Director de DesarrolloWeb.com

Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.

* Para consultas técnicas utilizar la lista de correo.

Versión imprimible Versión imprimible del artículo
Enviar artículo por e-mail Enviar artículo por e-mail
Añadir un comentario al artículo Publicar un comentario del artículo

Manuales relacionados con este artículo
Dentro de Taller de ASP

Categorias relacionadas
A través de las categorías de nuestro directorio se pueden encontrar otro tipo de recursos relacionados con este artículo:
+ Entrar en Scripts en ASP
+ Entrar en Manuales de ASP


 Comentarios de los visitantes
Aun no hemos recibido comentarios de este artículo.
Puedes ser el primero en enviar tu comentario.



Enlaces:
Maestrosdelweb
  Ir arriba

Manuales relacionados
+Taller de ASP
Categorías
+Scripts en ASP
+Manuales de ASP

Lectura recomendada

Compra este libro en Agapea, la librería urgente a domicilio.

Tienda DesarrolloWeb

DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia