Foros del Web » Programando para Internet » ASP Clásico »

Variables "session" como tablas

Estas en el tema de Variables "session" como tablas en el foro de ASP Clásico en Foros del Web. Necesitaría declarar 2 variables tipo "session" pero como arrays, tablas, y no tengo ni idea de cómo hacerlo ni si es posible. ¿Cómo lo podría ...
  #1 (permalink)  
Antiguo 11/03/2003, 05:36
 
Fecha de Ingreso: marzo-2003
Mensajes: 4
Antigüedad: 22 años, 1 mes
Puntos: 0
Variables "session" como tablas

Necesitaría declarar 2 variables tipo "session" pero como arrays, tablas, y no tengo ni idea de cómo hacerlo ni si es posible.
¿Cómo lo podría hacer?

Gracias.
  #2 (permalink)  
Antiguo 11/03/2003, 06:00
 
Fecha de Ingreso: enero-2002
Ubicación: Dentro del corralón
Mensajes: 287
Antigüedad: 23 años, 3 meses
Puntos: 0
¿Un poco mas de claridad?

Asmel:
Las variables de sesión mantienen su valor -perdón por la obviedad- durante toda la sesión. Esto significa, o bien hasta que la destruís o bien cuando el usuario cierra el navegador. Los valores de estas variables son accesibles desde "cualquiera" de tus páginas, en cambio un array es accesible solo en la página donde lo estás declarando y asignándole los valores. Cuando te referís a tabla, ¿significa una tabla de una base de datos?, eso es algo distinto también y si bien podrías simular una variable de sesión (ya que desde cualquiera de tus páginas podrías hacer una consulta y recuperar el valor) deberías tener definida una clave para acceder al dato que te interesa, diferenciado por cada usuario (ese es el sentido de una variable de sesión, almacenar valores por cada usuario que abre una sesión). Desconozco el motivo por el cual estás intentando hacer esto pero me parece medio rebuscado. ¿Por qué no indicás mejor que necesitás hacer asi entre todos buscamos la solución?.
Espero no haberte mareado con tanta explicación.
Saludos.
__________________
Leonardo D'Angelo
  #3 (permalink)  
Antiguo 11/03/2003, 06:30
 
Fecha de Ingreso: marzo-2003
Mensajes: 4
Antigüedad: 22 años, 1 mes
Puntos: 0
Explico para qué

Tengo una tabla de una base de datos llamada Oferta y estoy haciendo una tienda virtual/carrito para esa tabla.

Lo que tengo hecho es que tú vas seleccionando las ofertas y se ta van agregando a un array (no tabla de BD), todo en distintas páginas y con distintintas posibilidades (borrar oferta, borrar todo carrito, ver carrito, enviar pedido...).

Lo de guardar los códigos de la oferta en un array lo ha conseguido de la siguiente manera:

session("in") = 1 'indice del array inicializado a 1
session(session("in")) = cod ' guardamos el código de oferta
session("in") = session("in") + 1 'incrementamos el índice

Esto si sólo quisiera un array me sería más que suficiente, pero si además de ofertas quisiera otras tablas de BD para el pedido o pasibilidad de elegir unidades (por ejemplo de la oferta 10 quiero 4 unidades) ya no me funciona, me funcionaría haciendo la cutrería de decir que los valores del índice del 1-100 son para ofertas, del 101-200 son para unidades...

Tiene que haber alguna manera para que yo pueda declara una variable tipo array y que sea sesion o para que pueda hacer lo que quiero.

Gracias.
  #4 (permalink)  
Antiguo 11/03/2003, 07:24
 
Fecha de Ingreso: enero-2002
Ubicación: Dentro del corralón
Mensajes: 287
Antigüedad: 23 años, 3 meses
Puntos: 0
No se como impactaría en el server pero ...

tengo entendido que podés guardar un array como variable de sesión de la misma manera que asignás cualquier valor. Ej.
Código PHP:
<%
Dim Arr
' Asigno los valores al array
Arr = Array(1,2,3,4,5)

Asigno el array a la variable de sesión
Session
("MiLista") = Arr

 Recorro todos los valores para verificar que quedaron bien cargados
.
For 
Each Valor In Session("MiLista")
      
Response.Write("Valor=" Valor "<BR>")
Next
%> 
No sé si alguien quiera aportar algo más. En realidad no tengo mucha experiencia en como manejar carritos de compra pero hay que tener cuidado con la cantidad de variables de sesión que se definan.
Saludos y suerte.
__________________
Leonardo D'Angelo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:57.