| Enlaces Patrocinados : juegos Gratis Online | emoticonos y emoticones | Descargas Bittorrent | Recursos Web | Depurando.com | Peliculas Gratis | |||||
![]() |
|
|
|||
|
|
|||||
|
|
|
||||
Carrito de Compras en ASPPlanteamientos iniciales para realizar este carrito Vamos a ver una manera sencilla de realizar un carrito de la compra en ASP, utilizando variables de sesión para guardar los productos comprados, junto con sus precios y otros datos. En estos ejemplos nos vamos a centrar exclusivamente en la funcionalidad del carrito, es decir, la memorización de los productos comprados a lo largo de toda la sesión, dejando de lado todo lo relativo a presentación o la extracción de los productos de una base de datos. Para entender este manual son necesarios unos conocimientos previos sobre ASP, que se pueden obtener de la lectura de este manual de ASP o los talleres prácticos de la tecnología . Deben prestar especial atención al manejo de sesiones y el trabajo con el Global.ASA. También el manual de la biblioteca de ASP puede dar alguna clave sobre la creación de un carrito. Ahora bien, aunque puede ser interesante para ir aprendiendo los fundamentos de la creación de un carrito de la compra, el ejemplo es un poco básico y no creo que se pueda utilizar si no se le hacen unas mejoras al sistema. Librería carrito.asp Vamos a atacar al problema creando una librería de funciones que implementen el trabajo típico con el carrito. Esta librería la llamaremos carrito.asp y contendrá el código de todas las funciones relacionadas con el carrito de la compra. Debería poder: - Introducir un producto en el carrito - Eliminar un producto del carrito - Mostrar el carrito - Otras funcionalidades que seguro que necesitarás a medida que avances en el trabajo... Datos a utilizar El contenido del carrito se debe poder acceder en cualquier momento, siempre y cuando el visitante permanezca en la página. Además, cada visitante debe disponer de un carrito propio. Aunque podríamos pensar en otras soluciones, estas necesidades descritas inicialmente, hacen muy recomendable el uso de variables de sesión, puesto que ofrecen la mejor forma de tratar con datos específicos de cada usuario, que deben perdurar entre las distintas páginas que visite. Vamos a mantener una variable de sesión con el número de productos que cada usuario tenga en su carrito: session("num_prod") Debería inicializarse a cero al abrir la sesión. (Se hace en el global.asa) También necesitaremos guardar los id_producto de cada uno de los productos que se vayan introduciendo en el carrito. Lo haremos también utilizando variables de sesión, con esta numeracion:
Con una numeración así, se puede hacer un bucle para sacar por pantalla todos los identificadores de los productos del carrito. Se haría algo como esto:
Ahora bien, probablemente sea útil guardar más que los simples identificadores de los productos. Si se guarda su precio y su nombre puede ser útil para mostrar rápidamente esos valores sin necesidad de acceder a la base de datos. Los precios los puedes guardar de esta manera:
Los nombres de los productos los puedes guardar en variables como estas:
Implementación, edición Global.ASA y funciones de librería Empezamos creando un archivo Global.ASA para inicializar la variable de sesión que guarda el número de productos, llamada session("num_prod"). La variable se inicializa en el procedimiento
Referencia: Se explica el funcionamiento del Global.ASA en un artículo de DesarrolloWeb.com. Vamos ahora con las funciones típicas del carrito que se necesitará crear en algún momento. Introducir un producto en el carrito Se hace con una función que recibe los datos del producto y los introduce en variables de sesión. También aumenta en uno el número de productos del carrito.
El incremento se hace al principio porque el numero de productos inicialmente es cero y el primer producto a insertar deseamos que tenga el índice uno. Borrar un producto del carrito Debemos disponer de una función que nos permita eliminar un producto del carrito. En este caso voy a crear una función que recibe el número de línea del producto dentro del carrito. Podríamos recibir también el identificador del producto a borrar o incluso puede ser que nos sea útil crear un par de funciones para borrar productos del carrito, una recibiendo la línea del carrito y otra recibiendo el identificador del producto. Para este ejemplo me resulta más fácil recibir la línea en la que está ese producto en el carrito.
Simplemente colocamos a cero el identificador de producto a borrar. No borramos directamente las variables de sesión porque eso nos obligaría a recolocar todos los índices de las variables de sesión para que fuesen correlativos. Este detalle tendremos que tenerlo en cuenta a la hora de mostrar el carrito, pues si el identificador de producto es cero, se entiende que el producto está eliminado del carrito. Tampoco disminuimos en uno el número de productos, porque en realidad no estamos eliminando un producto de la estructura de datos, sino que lo estoy marcando a cero para saber que no hay nada que contabilizar en ese caso. Código para mostrar el contenido del carrito. La última función de las que vamos a ver aquí sirve para mostrar todos los productos del carrito. Tiene que hacer un simple bucle que recorra todas las variables de sesión creadas al meter productos en el carrito. Debe mostrar los datos de cada producto según se recorre con el bucle. Además, debe proporcionar el importe total de la compra y un enlace para quitar cualquier producto del carrito.
La función declara primero la variable precio_total donde se guardará la suma de importes de los productos. Luego comprueba el número de productos, porque si es cero significa que no hay nada en el carrito y debería indicarse así. Si había productos en el carrito, se muestran todos los productos con un bucle que recorre las líneas del carrito, desde la primera hasta el número de productos. En cada línea del carrito se muestran sus datos, teniendo cuidado porque si el identificador del producto era cero quería decir que ese producto había sido borrado del carrito. Además, acumulamos en la variable precio_total el importe de todos los productos del carrito que no han sido borrados previamente. Finalmente, aunque todavía dentro del bucle, colocamos un enlace para que el visitante pueda eliminar un producto del carrito. Hay que darse cuenta que el enlace para borrar un producto indica como parámetro la línea del carrito que se debe borrar, que era lo que nosotros necesitábamos en la función creada para borrar los productos. Ya fuera del bucle, imprimimos el importe total con la suma de los importes de los productos que hemos ido acumulando durante el bucle. Ejemplos sencillos de uso de las librerías que usa el carrito Para ilustrar el funcionamiento de la librería del carrito vamos a realizar unas páginas donde podremos utilizarlas. Realmente son unas páginas sencillas, el trabajo duro ya se realizó al crear el propio carrito. index.asp La página de inicio muestra una lista de objetos para comprar. Esta lista está completamente inventada sobre la marcha, pero en nuestros ejemplos lo lógico sería que la extrajéramos de una base de datos.
Ing. David Ordinola Guevara http://www.mygnet.com/articulos/asp/751/index.php ![]() ![]() Datos del Articulo Nombre :Carrito de Compras en ASP Visitas :453 Mas ArticulosCalcular Numero Impar o Par en... Detectar Info de Navegador con... Trabajo con el buffer de la pá... Evitar Cache con ASP... Conexion a bases de datos ASP... |
|||||
|
LanLandia Networks -> www.colombiaphp.net | www.flowbarranquilla.net | www.weboneando.com | www.macventas.com | contacto commentariosweb@gmail.com
|
|||||
|
|
|
|
|
|
|