> Manuales > Librería virtual en ASP

Adicionamos un artículo a nuestro carrito guardando su referencia.

El archivo busqueda.asp nos propone un enlace a la página anadir.asp acompañado de una variable "id" que tiene como valor la referencia de un articulo. Al pinchar sobre el enlace, ejecutamos este script que tiene como consecuencia el aumento de una unidad del numero de artículos y el almacenamiento de la referencia del nuevo articulo incluido:

<%
'Recuperamos la referencia del articulo
id=Request.Querystring("id")

'Anadimos un articulo mas al carrito y le damos el valor de la referencia
Session("num_articulos")=Session("num_articulos")+1
Session(session("num_articulos"))=id
%>

<!--#include file="plantillas/connon.inc"-->
<!--#include file="scripts_lengua/lecturalengua.inc" -->
<!--#include file="plantillas/plantillahtml.inc"-->

<table align="center" width="400" cellspacing="2" cellpadding="2" border="0">
<%
'Fijamos en 10 el limite de libros
If Session("num_articulos")>10 Then
   Session("num_articulos")=10
%>
   <tr>
   <td bgcolor="#999966" align="center"><FONT face="verdana,arial,helvetica" size=2 color="#ffffff"><%imprimir("limite")%></font><br></td>
   </tr>
<%Else 'tenemos menos de 10 libros, podemos pues anadir el nuevo%>
   <tr>
   <td bgcolor="#999966" align="center"><FONT face="verdana,arial,helvetica" size=2 color="#ffffff"><%imprimir("anadido")%></font><br></td>
   </tr>
<%End If%>
<tr>
<td bgcolor="#cc9900" align="center"><FONT face="verdana,arial,helvetica" size=2 color="#ffffff"><a href="carrito.asp"><%imprimir("vercarrito")%></a></font><br></td>
</tr>
<tr>
<td bgcolor="#999966" align="center"><FONT face="verdana,arial,helvetica" size=2 color="#ffffff"><a href="busqueda.asp"><%imprimir("volver")%></a></font><br></td>
</tr>
</table>

<!--#include file="plantillas/connoff.inc"-->

</body>
</html>


Para comenzar, como siempre, recogemos la variable que la URL nos envía:

'Recuperamos la referencia del articulo
id=Request.Querystring("id")


Seguidamente aumentamos de uno la cantidad de libros que hay en el carrito y asignamos el valor de la referencia a una variable Session("numero") cuyo valor de número corresponde con el de la cantidad de artículos presentes en el carrito:

'Anadimos un articulo más al carrito y le damos el valor de la referencia
Session("num_articulos")=Session("num_articulos")+1
Session(session("num_articulos"))=id


Tendremos por lo tanto una colección de variables de este tipo: Session(1)=referencia_1, Session(2)=referencia_2...

La forma más rigurosa de llevar a cabo este tipo de gestiones es a partir de un almacenamiento de registros con los datos correspondientes a cada articulo en una tabla. No hemos querido complicar la aplicación en este sentido y hemos preferido centrarnos en otros aspectos.

Seguidamente, hemos introducido una secuencia que controla el número máximo de artículos en el carrito. Dicho número ha sido fijado en 10. En realidad, para una aplicación "profesional" de este tipo la capacidad del carrito debería ser ilimitada y esto complicaría ligeramente las cosas. Dejamos este punto también a reflexión del lector.

'Fijamos en 10 el limite de libros
If Session("num_articulos")>10 Then
   Session("num_articulos")=10
%>
   <tr>
   <td bgcolor="#999966" align="center"><FONT face="verdana,arial,helvetica" size=2 color="#ffffff"><%imprimir("limite")%></font><br></td>


Si el libro añadido no hace sobrepasar la capacidad del carrito, imprimiremos un mensaje comunicando el éxito de la operación y ofreceremos dos enlaces: Uno para volver al menú de búsquedas y seguir con las compras y otro para ver y editar el carrito.

<%Else 'tenemos menos de 10 libros, podemos pues anadir el nuevo%>
   <tr>
   <td bgcolor="#999966" align="center"><FONT face="verdana,arial,helvetica" size=2 color="#ffffff"><%imprimir("anadido")%></font><br></td>
   </tr>
<%End If%>
<tr>
<td bgcolor="#cc9900" align="center"><FONT face="verdana,arial,helvetica" size=2 color="#ffffff"><a href="carrito.asp"><%imprimir("vercarrito")%></a></font><br></td>
</tr>
<tr>
<td bgcolor="#999966" align="center"><FONT face="verdana,arial,helvetica" size=2 color="#ffffff"><a href="busqueda.asp"><%imprimir("volver")%></a></font><br></td>


Ir la librería

Rubén Alvarez

Rubén es doctor en química y programador aficionado con experiencia en PHP.

Manual