la génesis del método la haremos utilizando Php y Mysql. Necesitaremos la almohadilla de antecedentes para abstenerse la exposición de los géneros, los numeros de la importación como así incluso noticia del cliente que realizo la compra.
antes de emprender a plantear, necesitamos hacer efecto una análisis o ensayo del sistema para hipotecarse claro con cuantos modules contara nuestro carromato de consumiciones online. Es bastante cierto que como programadores muchas ocasiones queremos venir a quemarropa a la codificación, sin embargo es bastante importante que adoptemos una metodología a la hora de empezar a urbanizar nuestros sistemas.
análisis del Sistema:
habitualmente un carrito de consumiciones se widget teniendo en relación los módulos: artículos, clientes, consideraciones y compras.
Como ahora hemos hallado en el tutorial de Programación Orientada a Objetos en Php, podemos declarar que los modules se pueden descifrar como categorías, lo que implica que vamos a sostener cuatro variedades primarias: Producto, Cliente, Categoria y Venta.
modulo Productos:
Este módulo es el dirigido de controla todo lo relacionado a un producto, usualmente un producto tienen un prestigio, una explicación, un costo y está asociado a una categoría.
modulo Clientes:
Por observación lógica una operación está asociada a un cliente, por ende vamos a carecer una ralea que se encargue de economizar a los clientes, sus apuntes y sus compras.
modulo Ventas:
La cesión es el redundado final de todo el juicio y está relacionada a un cliente, como así todavía a uno o multiples artículos.
módulo Categorías:
Las colecciones son una guisa de seleccionar y enderezar los artículos en nuestro bloqueo. Por ejemplo: en un espacio de fondas de electrodomésticos un preparador estaría auxiliar a la condición “computación”, un televisor estaría en “electrodomésticos”.
para nuestro tutorial usaremos como arquetipo una repisa, para lo cual podemos cascar que los artículos serían los cuadernos y las naturalezas los especies: por ejemplo: terror, semblanza, farsa etc.
estructura de la Base de Datos:
en la Programación Orientada a Objetos la organización de la pata de numeros puede ser nítida mayoritariamente del diagrama de clasificaciones o lo que se conoce como Uml. Por lo tanto, basándonos en las clases que tendrá el sistema podemos proponer que tendremos 5 escenitas primarias en nuestro sistema.
las planchas de nuestro carrito de operación serán las subsiguientes: Productos, Categorias, Ventas y Clientes.
comenzamos a Programar El Carro de Compras:
para el desarrollo de nuestro carrito de transacciones utilizaremos variables de logia las cuales nos permiten retener los artículos seleccionas por el cliente a través de todas las paginas mientras tanto este en nuestro sitio.
en una variable de masonería almacenaremos nuestra clase “cart” la cual tienen los razonamientos sustanciales de un carrito de consumición, estos son: ligar producto, anular producto del carrito, ganar total de la compra.
análisis de Clases:
clase Cart.php
class Cart { var $colproducts; function Calctotal(){ $stotal=0; for ($i=1; $i <= count($this->colproducts); $i++){ $stotal=$stotal + $this->colproducts[$i]->mcost; } $stotal = number_format($stotal,2,".",",") ; return $stotal; } function Borrarproduct($linea){ $pos = 0; $colaux; for ($i=1; $i <= count($this->colproducts); $i++){ if ($i != $linea){ $pos++; $colaux[$pos] = $this->colproducts[$i]; } } $this->colproducts = $colaux; } function Agregarproduct($unproducto){ $this->colproducts[count($this->colproducts)+1]=$unproducto; } function Mostrarproduct($line){ return $this->colproducts[$line]; } }
como inmediatamente hemos advertido Php soporta encapsulamiento, así la ralea Cart tendrá internamente una familia de géneros. Lo que se traduce en una familia de objetivos “producto”. De no englobar estos ensimismamientos te recomiendo veas el cauce de Programación Orientada a Objetos en Php. Lo vas a localizar en la ración cursos.
clase Producto.php
require("productopersistent.php"); class Producto { var $mper; var $midorden; var $mid; var $mqty; var $mcost; var $mstatus; function Producto() //constructor { $this->mper = new Productopersistent(); } function Guardarprodorder() //guardar el producto en la moldura de ordenes { return $this->mper->guardarprodorder($this); } function Dartodosdecategoria($cod) //me da todos los artículos dependiendo de la categoria { return $this->mper->dartodosdecategoria($cod); } function Darnombreprod($name) //optimiza el prestigio del producto { $name = ucwords($name); return $name; } function Daruno($cod) //me da una producto con el Id { return $this->mper->daruno($cod); } }
en la primera línea incluimos la materia “productopersistent” que es la encargada de interactuar con la almohadilla de elementos, es ahí adonde se encontraran todas las decisiones Sql.
recuerda siempre perseverar el orden y la prolijidad en tu reglamento naciente, te va a aventajar muchas sucesiones que tenga que reutilizar el estatuto y cuanto más claro este más rápido lo comprenderás.
la metodología prudente es la citación en tres láminas, Ui o interface del sucesor, el ámbito que sería la veta intermediaria y la rodaja persistente, la encargada de sincerarse con la peana de numeros. Pero, para no entreverarnos, prosigamos con el carruaje de compras.
clase Productopersistent.php:
esta variedad controla todas las decisiones Sql, realiza consultas, actualiza certificados y hez. Las laboras esenciales de cualquier carrito de compras.
require_once("persistent.php"); class Productopersistent extends Persistent { function Guardarprodorder($unperm) { $result = ""; $sql = "insert Into orden_detalles(detalle_orden_id , detalle_producto_id , detalle_cant , detalle_precio ) Values("; $sql.= "'".$unperm->midorden."', "; $sql.= "'".$unperm->mid."', "; $sql.= "'".$unperm->mqty."', "; $sql.= "'".$unperm->mcost."') "; $this->setsql($sql); $result = $this->save(); return $result; } function Daruno($cod) { $sql = " Select pro.*, cat.cat_id , cat.cat_name "; $sql .= " From artículos pro"; $sql .= " Right Join categorias cat On (cat.cat_id = pro.prod_cat_id)"; $sql .= " Where cat.cat_id = pro.prod_cat_id And pro.id = '$cod'"; //echo $sql; $this->setsql($sql); return $this->obtain(); } function Dartodosdecategoria($cat) { $sql = " Select pro.*, cat.cat_id , cat.cat_name "; $sql .= " From géneros pro"; $sql .= " Right Join categorias cat On (cat.cat_id = pro.prod_cat_id)"; $sql .= " Where cat.cat_id = pro.prod_cat_id And pro.prod_cat_id = '$cat'"; $this->setsql($sql); return $this->obtain(); } }
clase Orden:
esta categoría es una de las más importantes, sin embargo, en este tutorial solo agregaremos un sistema, el facultado de producir la ordenamiento en la viga correspondiente.
require("ordenpersistent.php"); class Orden { var $mper; var $m_orden_cliente_id; var $m_orden_total; function Orden() //constructor { $this->mper = new Ordenpersistent(); } function guardar() { return $this->mper->guardar($this); } }
require_once("persistent.php"); class Ordenpersistent extends Persistent { function guardar($obj) { $result = ""; $sql = "insert Into ordenes (orden_cliente_id, orden_total , orden_fecha ) Values("; $sql.= "'".$obj->m_orden_cliente_id."', "; $sql.= "'".$obj->m_orden_total."', "; $sql.= "'".date("y-m-d")."') "; $this->setsql($sql); $result = $this->save(); return $result; } }
una categoría secundaria es la que administra las alturas. Solo necesitamos dos usos, uno para exhumar todas las familias de la almohadilla de antecedentes y otro para desquitarse solo una teniendo en enumeración el Id de la misma.
require("categoriapersistent.php"); class Categoria { function Categoria() { $this->mper = new Categoriapersistent(); } function Giveall($catid) { return $this->mper->giveall($catid); } function Getone($cod) { return $this->mper->getone($cod); } }
básicamente, inmediatamente tenemos expuesto lo que será el sentimentalismo de nuestro forcaz de consumiciones en Php. Ahora solo tenemos que originarse a integrar las layas con la interface representación del usuario.
puesta en jornada de nuestro Carro de Compras:
para inaugurar necesitamos una página adonde exhibir todos los géneros, los cuales podrán ser preferidos para comprar.
usualmente, una tira de géneros son desplegados en la primera página de un aislamiento de consumiciones online la cual puede ser filtrada seleccionado criterios que son mostrados en la línea costada.
también, cada producto debe poseer la disyuntiva de “agregar”, la cual, al ser clickeada agrega el producto a la cesta. Una fotografía en miniatura tiene que ser mostrada igualmente al igual que el precio.
para la ostentación de todo lo que hemos conocido he suscitado una demo la cual puede ser perspectiva haciendo clic aquí:
instalación del Carrito de Compra de Ejemplo:
1) descarga el anaquel comprimido aquí.
2) descomprímelo.
3) edita el anaquel de unión a la embrión de puntos “db_conection.php” que está en la documentación “classesfra”
4) abre el pago “db_estructura.txt” para descubrir las escalas en tu servidor.
5) sube todo los editoriales a tu servidor.
6) listo
recordar:
el carrito de consumiciones de prototipos esta únicamente eso, un modelo. Con el cual se pretenden presentar las funcionalidades fundamentales. La voluntad de este tutorial es darte las herramientas y guiarte para que tú puedas poblar tu legal sistema.
buena fortuna amigos.
]]>Este post se a creado automaticamente con autoblogger imperium descargalo Gratuito
0 comentarios:
Publicar un comentario