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

Varible De Sesion- Solo Guarda El Ultimo Valor

Estas en el tema de Varible De Sesion- Solo Guarda El Ultimo Valor en el foro de ASP Clásico en Foros del Web. Hola amigos, que tal las Navidades, bien no!!!!! Al tema, tengo el siguiente problema, en una variable de sesion estoy guardando todos los productos que ...
  #1 (permalink)  
Antiguo 27/12/2005, 11:26
 
Fecha de Ingreso: julio-2005
Mensajes: 137
Antigüedad: 19 años, 10 meses
Puntos: 0
Varible De Sesion- Solo Guarda El Ultimo Valor

Hola amigos, que tal las Navidades, bien no!!!!!

Al tema, tengo el siguiente problema, en una variable de sesion estoy guardando todos los productos que se seleccionan (tipo carrito compra) y si realizo un response.write de la varible de sesion me muestra todos los productos que el cliente quiere "comprar", pero al intentar visualizar el contenido en otra pagina SOLO ME MUESTRA EL ULTIMO QUE HE "COMPRADO", ¿en que me estoy equivocando?

Os paso parte del codigo:

'******* PAGINA DONDE MUESTRA TODO EL CONTENIDO SELECCIONADO
'creo la variable de sesion de los productos donde se guardan lo que va comprando el cliente.

Session("carr")

For Each clave in carrito
subtotal=0 ' Total de cada artículo en el carrito
'Pinto la línea de este producto
SQL="SELECT * FROM Prod WHERE Id="&clave&";"
set oRs=oConn.Execute(SQL)

<th scope="row"><%=oRs.Fields("titulo")%></Th>
<th scope="row"><%=carrito(clave)%></Th>
<th scope="row"><%=oRs.Fields("Precio")%>&nbsp;<%respo nse.write("€")%></Th>
<th scope="row"><A HREF="shop.asp?ac=sacar&prod=<%=clave%>&cant=1"><i mg src="images/papelera.gif" width="13" height="15" alt="Quitar Uno" border="0"></A>
<A HREF="shop.asp?ac=sacar&prod=<%=clave%>&cant=<%=ca rrito(clave)%>"><p>&nbsp;</p><img src="images/papelera.gif" width="13" height="15" alt="Quitar Todos" border="0"><img src="images/papelera.gif" width="13" height="15" alt="Quitar Todos" border="0"></A>
</Th>
<%

session("CARR")=oRs.Fields("titulo")
response.write(session("CARR"))

Next

'******** CODIGO DE LA OTRA PAGINA DONDE QUIERO VOLVER A VISUALIZAR EL CONTENIDO DE LA VARIABLE DE SESION CARR

response.write(session("carr"))

Es en esta página donde solo se visualiza el último producto seleccionado y no todos los productos como en la anterior.


Espero que me puedan ayudar, GRACIAS
  #2 (permalink)  
Antiguo 27/12/2005, 12:39
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
session("CARR") = session("CARR") & oRs.Fields("titulo")
__________________
...___...
  #3 (permalink)  
Antiguo 27/12/2005, 13:28
 
Fecha de Ingreso: julio-2005
Mensajes: 137
Antigüedad: 19 años, 10 meses
Puntos: 0
ALZUWAGA, COMO SIEMPRE.... SIN PALABRAS.

Muchas GRacias.

Por otra parte, me podrias recomendar algún sitio donde poder sacar un manual de ASP.

Saludos
  #4 (permalink)  
Antiguo 27/12/2005, 20:19
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Cita:
Iniciado por proyectosej
ALZUWAGA, COMO SIEMPRE.... SIN PALABRAS.

Muchas GRacias.

Por otra parte, me podrias recomendar algún sitio donde poder sacar un manual de ASP.

Saludos
Eso fue anterior o posterior al mensaje privado en donde decías que no funcionaba? (mensaje privado que, por cierto, borré. No Respondo en privado cosas técnicas)

Saludos
__________________
...___...
  #5 (permalink)  
Antiguo 28/12/2005, 01:55
 
Fecha de Ingreso: julio-2005
Mensajes: 137
Antigüedad: 19 años, 10 meses
Puntos: 0
AL ZUWAGA, FUÉ POSTERIOR.
La primera vez no me di cuenta de lo que pasaba.
El problema esta en que la variable de sesion almacena cada vez los productos del carrito, pero repite los anteriores, no se si me esplico.

Si seleccionamos por ejemplo producto A, la primera vez la variable de sesion vale A, si seguimos mirango productos y seleccionamos para comprar por ejemplo B, la variable de sesion vale A,A,B,B,B... y asi siempre. Añade los productos que ya tenia con los nuevos, repitiendolos.

Ruego me puedas ayudar!!!!!

Gracias
  #6 (permalink)  
Antiguo 28/12/2005, 10:27
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
A, ya. Probá ésto:


Código:
'******* PAGINA DONDE MUESTRA TODO EL CONTENIDO SELECCIONADO
'creo la variable de sesion de los productos donde se guardan lo que va comprando el cliente.

'Si está vacía, la inicializo con un caracter de control (|) para luego
'detectar duplicados
If Session("carr") = "" then Session("carr") = "|"

For Each clave in carrito
subtotal=0 ' Total de cada artículo en el carrito
'Pinto la línea de este producto
SQL="SELECT * FROM Prod WHERE Id="&clave&";"
set oRs=oConn.Execute(SQL)

<th scope="row"><%=oRs.Fields("titulo")%></Th>
<th scope="row"><%=carrito(clave)%></Th>
<th scope="row"><%=oRs.Fields("Precio")%>&nbsp;<%respo nse.write("€")%></Th>
<th scope="row"><A HREF="shop.asp?ac=sacar&prod=<%=clave%>&cant=1"><i mg src="images/papelera.gif" width="13" height="15" alt="Quitar Uno" border="0"></A>
<A HREF="shop.asp?ac=sacar&prod=<%=clave%>&cant=<%=ca rrito(clave)%>"><p>&nbsp;</p><img src="images/papelera.gif" width="13" height="15" alt="Quitar Todos" border="0"><img src="images/papelera.gif" width="13" height="15" alt="Quitar Todos" border="0"></A>
</Th>
<%
'Sólo tiene el caracter de control, así que es el primer producto que compra
If session("CARR") = "|" Then
	' y por lógica debe agregarse siempre
	session("CARR") = session("CARR") & oRs.Fields("titulo") & "|"
Else 'No tiene sólo el caracter de control, así que verifico que el producto no exista ya
	If InStr(session("CARR"), "|" & oRs.Fields("titulo") & "|") = 0
		'Si entró acá, es que el producto no existía en la variable session y entonces se agrega
		session("CARR") = session("CARR") & oRs.Fields("titulo") & "|"
	End if
End if
response.write(session("CARR"))

Next
No estoy seguro que funcione.. no lo probé, pero sería la idea
__________________
...___...
  #7 (permalink)  
Antiguo 28/12/2005, 13:02
 
Fecha de Ingreso: julio-2005
Mensajes: 137
Antigüedad: 19 años, 10 meses
Puntos: 0
Al zuwaga, perfecto, muchas gracias..... pero cometiste TU ERROR MAS COMUN.... Te suena el THEN... ja ja ja.

Una cosilla, ya que me estas ayudando un montón, me gustaria que me dieses tu opinión sobre lo que estoy haciendo, si te interesa verlo, me lo dices y te indico la WEB, me valdria mucho saber lo que opina un maestro.

Otra vez muchas GRACIAS!!!!!!!!
  #8 (permalink)  
Antiguo 28/12/2005, 14:09
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Código:
	If InStr(session("CARR"), "|" & oRs.Fields("titulo") & "|") = 0 THEN 
:)

Indicame la web
__________________
...___...
  #9 (permalink)  
Antiguo 29/12/2005, 01:28
 
Fecha de Ingreso: julio-2005
Mensajes: 137
Antigüedad: 19 años, 10 meses
Puntos: 0
Al zuwaga, te envio la url, por mensaje privado, ya que esta con opciones para administradores que quiero que veas.
  #10 (permalink)  
Antiguo 29/12/2005, 05:28
Avatar de pempas  
Fecha de Ingreso: diciembre-2003
Ubicación: Barcelona
Mensajes: 985
Antigüedad: 21 años, 4 meses
Puntos: 6
Oye nen,

Que yo también quierlo verla!!
  #11 (permalink)  
Antiguo 29/12/2005, 10:03
 
Fecha de Ingreso: julio-2005
Mensajes: 137
Antigüedad: 19 años, 10 meses
Puntos: 0
Pempas, no que me la CRAKEAS....
ja ja ja

Dame un toke cuando estes online y te envio mesaje con la url

adeu nene
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 11:19.