Carrito de compras con PHP y MySQL
Carrito de compras con PHP y MySQL. Si queremos crear una página web que pueda vender es importante desarrollar un sistema de tienda en línea y para culminar nuestro objetivo necesitamos de un carrito de compras en nuestro proyecto web, para generar ventas. En esta entrada les mostrare un pequeño ejemplo para que tengan una idea acerca de su funcionamiento.
Carrito de compras con PHP y MySQL
Sin embargo, solo mencionarles que este artículo es algo básico que ustedes pueden complementar más adelante, modificarlo a su antojo de acuerdo a sus requerimientos.
Primero crear una Base de datos con sus respectivas tablas
La base de datos consta de 4 tablas que detallaremos más abajo.
1 .Tabla Clientes
CREATE TABLE IF NOT EXISTS `clientes` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(100) COLLATE utf8_unicode_ci NOT NULL, `email` varchar(100) COLLATE utf8_unicode_ci NOT NULL, `phone` varchar(15) COLLATE utf8_unicode_ci NOT NULL, `address` text COLLATE utf8_unicode_ci NOT NULL, `created` datetime NOT NULL, `modified` datetime NOT NULL, `status` enum('1','0') COLLATE utf8_unicode_ci NOT NULL DEFAULT '1', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=2 ;
2. Tabla Mis Productos
CREATE TABLE IF NOT EXISTS `mis_productos` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(200) COLLATE utf8_unicode_ci NOT NULL, `description` text COLLATE utf8_unicode_ci NOT NULL, `price` float(10,2) NOT NULL, `created` datetime NOT NULL, `modified` datetime NOT NULL, `status` enum('1','0') COLLATE utf8_unicode_ci NOT NULL DEFAULT '1', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=5 ;
3. Tabla Orden
CREATE TABLE IF NOT EXISTS `orden` ( `id` int(11) NOT NULL AUTO_INCREMENT, `customer_id` int(11) NOT NULL, `total_price` float(10,2) NOT NULL, `created` datetime NOT NULL, `modified` datetime NOT NULL, `status` enum('1','0') COLLATE utf8_unicode_ci NOT NULL DEFAULT '1', PRIMARY KEY (`id`), KEY `customer_id` (`customer_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=6 ;
4. Tabla Orden_articulos
CREATE TABLE IF NOT EXISTS `orden_articulos` ( `id` int(11) NOT NULL AUTO_INCREMENT, `order_id` int(11) NOT NULL, `product_id` int(11) NOT NULL, `quantity` int(5) NOT NULL, PRIMARY KEY (`id`), KEY `order_id` (`order_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ; ALTER TABLE `orden` ADD CONSTRAINT `orden_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `clientes` (`id`) ON DELETE CASCADE ON UPDATE NO ACTION; -- -- Filtros para la tabla `orden_articulos` -- ALTER TABLE `orden_articulos` ADD CONSTRAINT `orden_articulos_ibfk_1` FOREIGN KEY (`order_id`) REFERENCES `orden` (`id`) ON DELETE CASCADE ON UPDATE NO ACTION;
Recursos que utilizaremos para este ejemplo
Utilizaremos libreria externas tipo CDN para no sobrecargar el servidor
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
- El Lenguaje PHP Como interprete para la conexión con nuestro servidor MySQL
- Una base de datos tipo MYSQL para almacenar y/o mostrar resultados en la interfaz de usuario.
- Como base el lenguaje HTML
Descarga
Descargar Código FuenteInstalación
- Descomprimir el paquete descargado y copiar a la raíz de tu servidor local o servidor web
- Importar el fichero carta.sql a tu gestor de base de datos (MySQL)
- Editar el fichero Configuracion.php para configurar los accesos al servidor
- Digitar la dirección de tu servidor web en el navegador para visualizar los contenidos
me podrian ayudar tengo este pequeño problema les paso 2 capturas de pantalla para que vean el error que se me presento ojala que me puedan ayudar…. https://drive.google.com/file/d/1EZDyrApPbGncuquUFeYBpbOiZdLYxPCI/view?usp=sharing
Buenos dias y felicitaciones por su desempeño al difundir este lenguaje de programacion antiguo pero de mucha popularidad y utilidad para el desarrollo de software.
Gracias.
excelente tu codigo saludos y sigue ayudándonos a nosotros que recién empezamos en este fascinante mundo un gran abrazo desde argentina.-Diego
Buenas Tardes, tengo un problema no se si podría ayudarme, cuando cambio las cantidades en el cuadro de texto no me cambian los valores
pero necesito que me ayudes con sesión mas pues
buenos dias como estas excelente tu aporte de verdad queria que me ayudaras con el codigo parea agregarle unas cositas podras?
Saludos Dilio,
No realizamos modificación del código a medida.
Disculpe las molestias.
Se le puede agregar un botón actualizar cuando se cambia la cantidad de un item.
Se le puedria agregar images a los productos.
Le faltaría un panel de control para el administrador para poder agregar, modificar los productos.