Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information "#$% &%''()* +, &*-.'% ,/ 01. 2*/ 3*'-% +, .%4* 0%5.%6 &*/),/(+* Paite 1: Intiouuccion Paite 2: Qu nos hace falta. Paite S: Biagiama ue Flujo Paite 4: Base ue uatos ue un caiio ue compia Paite S.1: Sciipts necesaiios paia un caiio ue compia en PBP y NySQL Paite S.2: Sciipts necesaiios paia un caiio ue compia en PBP y NySQL Paite 6: Aauii PayPal como mtouo ue pago a nuestio caiio ue compia
Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information 78 79:;<=>&&7?9 Una de las tareas que todo desarrollador web tiene que afrontar en un determinado momento es la creacin de una tienda virtual. Para este proyecto, es necesario tener conocimientos de programacin, bases de datos y desarrollo web con Html, CSS. Se pueue cieai una tienua viitual con uistintos lenguajes, en este caso hemos optauo poi PBP y NySQL, poi tanto, necesitaiemos conocimientos bsicos en estas uos veitientes, si no es nuestio caso pueuen ayuuaise con los tutoiiales: PBP_SQL.puf 778 ;@A>@;7B7@9:<C 1. AppServ Servidor Web Local Apache Php Base de dat MySql 2. Cuenta Paypal 1. AppServ (Apache, Php, MySQL) Podemos obtener cada una de las partes por separado, pero se recomienda AppServ, que es un pack que instala en algunos clics y dentro de una misma ejecucin Apache, Php y MySql. Existen otras opciones para este tipo de instalacin todo en uno como Wamp (Si tu Sistema Operativo es Windows) o Lamp (Si tu Sistema Operativo es Linux) o Mamp (Si tu Sistema Operativo es Mac), aunque en este caso se ha utilizado AppServ 2.5.10 que contiene las siguientes versiones: Apache Web Server Versin 2.2.8 PHP Script Language Version 5.2.6 MySQL Database Version 5.0.51b phpMyAdmin Database Manager Version 2.10.3 Apyate de la gua de instalacin del AppServ: AppServInstalacin.doc 3. Cuenta Paypal Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information
Ahora hay que crear una cuenta en PayPal. A continuacin se explica de qu se trata este sistema de pago. Existen varias maneras de cobrar a clientes a travs de sitios web como pueden ser tarjeta de crdito, transferencia bancaria o una forma que consolidada en Internet y que la mayora conoce, el PayPal. Bien es cierto que no hace mucho tiempo el porcentaje de compras por Internet con tarjeta de crdito no era abundante en Mxico, debido a la desconfianza generalizada, pero ante tal animadversin de no comprar por Internet surgi un sistema de pago llamado PayPal que vino a solucionar estos problemas. PayPal es un sistema fiable y bastante generalizado en sitios web e-commerce, con l los usuariosos pueden comprar sus productos sin necesidad de informar sobre datos privados como el nmero de tarjeta de crdito, PIN, fecha de caducidad y nmero de seguridad, con el que un usuarioso potencialmente peligra o podra dejar una cuenta sin fondos. Definicin Wikipedia de PayPal PayPal es una empresa estadounidense, propiedad de eBay, perteneciente al sector del comercio electrnico por Internet que permite la transferencia de dinero entre usuarios que tengan correo electrnico, una alternativa al tradicional mtodo en papel como los cheques o giros postales. PayPal tambin procesa peticiones de pago en comercio electrnico y otro servicio webs, por lo que cobra un porcentaje.
Ahora que conocemos el sistema ha llegado la hora de crear una cuenta PayPal. Para ello, tan slo hay que acceder a la pgina web oficial y pulsar el botn Regstrese, como se muestra en la imagen: Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information
PayPal pone a nuestra disposicin 2 tipos de cuentas Cuenta PayPal para particulares: Particulares que compran y venden por internet Cuenta PayPal para empresas: Empresas que venden en Internet En los dos casos, crearse una cuenta en PayPal es gratuito, lo nico que tendremos que hacer es rellenar una serie de datos personales junto con el correo electrnico, que lo ms importante de la cuenta. La que nos interesa para este proyecto es el primer caso: Cuenta PayPal para particulares, ya que aunque sea limitado Vender en tu web un mximo de 2500! anuales, este registro servir solamente para esta prctica. Ahora ya disponemos de todos lo necesario para empezar a crear la base de datos en MySQL para el carrito de compra (siguiente tutorial) y todo lo que sigue. 7778 =(%4'%-% +, D6#E* En todo proyecto web, por muy simple que parezca, es bueno hacer un diagrama de flujo, una especie de croquis con los procesos que tendremos que seguir a la hora de ponernos a codificar. Estos pueden ser desde una visualizacin general hasta un diagrama de flujo refleja el ms mnimo detalle. Siguiendo con el tutorial, genera un diagrama de flujo para crear un carrito de compras.
Comparar con diagrama del profesor En qu porcentaje se parece?
Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information Viendo el diagrama podemos tener una idea de lo que hay que hacer, pero para el que no haya visto algo parecido, se explican a continuacin los apartados: De acuerdo a la direccin de las flechas vamos a ir explicando cada uno de las partes del proceso: 1. Login. En la mayora de aplicaciones web est presente el logueo de usuario, para as tener un acceso restringido a los datos de la aplicacin, pero si hablamos de crear un carrito de compra o una tienda virtual, esto no es necesario incluso no es beneficioso. Teniendo en cuenta que la finalidad de toda tienda es que el cliente compre, no debemos poner trabas ni le vamos a hacer perder el tiempo en formularios de registros y dems, mejor vamos al grano para comprar. Por tanto, el formulario de login de usuario no lo tendremos en cuenta en esta ocasin. 2. Ver Productos. Cuando un usuario accede a nuestra aplicacin, lo primero que le debemos mostrar es lo que realmente quiere ver, es decir, los productos. Los productos que vern los usuarios en la aplicacin pueden contener tanta informacin como queramos mostrar, pero para nuestro proyecto bastar con: Producto: Descripcin del Producto Precio: Precio en pesos del producto. Imagen (aadir al carro o eliminar del carro): La imagen servir al usuario para aadir al carro los productos que desee. Debido a que puede volver a la pgina de productos para agregar ms productos su carro, Debemos tener en cuenta que si por ejemplo el producto Camiseta Negra (L) ya ha sido elegido por el usuario, no le podemos mostrar de nuevo la imagen de aadir, sino la de eliminar. Esto veremos cmo se hace cuando empecemos con el cdigo. Si analizamos nuestro diagrama de flujo, vemos que esa primera accin del usuario de visitar nuestra pgina de productos, conlleva una serie de cosas: 1. Iniciamos variables de sesin: Cada vez que un usuario entra en la aplicacin se le abre una sesin nica para diferenciarlo de los dems usuarios y pasar informacin como productos, cantidad de productos, IP, etc... entre todas las pginas de nuestra aplicacin. 2. Acceso a la tabla Productos de la base de datos: Para recuperar la lista de productos de nuestra tienda, hay que acceder a la tabla PRODUCTOS de la base de datos y mostrarlos uno a uno en la tabla de nuestra pgina. 3. Aadir al carro. Una vez el usuario ha visto todos los productos disponibles, ya puede elegir el que desee. Haciendo clic en la imagen aadir al carro estar iniciando el proceso de compra, que en nuestra aplicacin generar una serie de procesos: Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information 1. Aadir producto a la variable de sesin. 2. Enviar al usuario a la cesta de la compra VerCarrito para darle la opcin realizar el pago o bien seguir comprando. 3. Cambiar la imagen aadir al carro del producto elegido en el archivo VerProductos por la imagen eliminar del carro. 4. Incluir una parte de la web para informar la cantidad de productos elegidos y el importe acumulado. 4. Ver carrito. Habrn dos motivos por los que el usuario puede visualizar el carrito: Cuando aade el primer producto o cuando el usuario haga clic en Ver Carrito.
5. Realizar Compra. En esta parte del proceso el usuario podr realizar la compra mediante PayPal informando una serie de datos, entre ellos el ms importante el e-mail que es la premisa principal para realizar pagos. 6. Envo de la Factura. Cuando se haya realizado el pago finalmente, informaremos al usuario mediante un reporte o factura de los datos de la compra y adems se le enviar un mail con el nmero de factura, datos de la compra, etc .. para que le sirva como comprobante. Una vez explicada la parte ms tediosa del tutorial, llega la hora de ponerse manos a la obra para crear la base de datos y empezar a introducir datos para seguir con el cdigo de la aplicacin. 7F8 G%H, +, +%)*H La estructura de una base de datos para una tienda virtual puede diferir en cuanto a complejidad, seguridad o incluso en cada analista. En nuestro caso ser algo sencillo, til y simplificado que nos servir para crear el carro de compra. Empecemos por hacer un anlisis de las tablas que nos harn falta para la base de datos que llamaremos colorate_paypal. Lo primero que analizaremos ser la distincin y relacin de tablas, que conseguiremos con una simple hoja y un bolgrafo como inicio del proceso. Genera un diagrama de anlisis de una base de datos para un carrito de la compra. Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information
Comparar tu diagrama con el del profesor En qu porcentaje se parece?
Tal y como se ve en la imagen del profesor, se han definido 4 tablas y aunque son bastante intuitivas por su descripcin, a continuacin se explica a detalle: CLIENTES: Esta tabla tiene que estar informada siempre que se realice un pedido, los datos quedan almacenados para hacer las facturas en el momento en que la compra se haya realizado correctamente. PRODUCTOS: Tabla donde guardaremos aquellos productos que el usuario podr comprar, as como informacin del nombre del producto, precio, etc .. PEDIDOS: Cada compra que el Cliente realice, debe estar ligada con un pedido donde tendremos informacin de quin lo ha realizado (CLIENTE) y detalles de la compra (DET_PEDIDOS). DET_PEDIDOS: Almacena el detalle del pedido, y algo muy importante como es la cantidad del producto elegido con lo que calcularemos el importe total. Debemos tener en cuenta que si el precio del Producto cambia despus de haberse dado de alta el detalle de un pedido, ste no cambiar en esta tabla (imaginaros el precio de un producto en promocin durante 2 meses, si al cabo de los 3 meses miramos el precio del producto veremos que es ms caro, pero en esta tabla seguir siendo el mismo). Una vez analizada cada una de las tablas de nuestra base de datos Colorate_Paypal, vamos con su creacin en MySQL. Crear base de datos Carrito de Compra en MySQL Para empezar vamos a crear la base de datos Colorate_Paypal. Accedemos a PhpMyAdmin (localhost/phpMyAdmin/) y damos de alta a las tablas: Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information
Es hora de ir incluyendo las tablas que hemos enumerado anteriormente. Para saber los campos que nos hacen falta, basta con mirar nuestro anlisis de la base de datos que tenemos escrito en papel. Antes de empezar a crear las tablas, se recomienda leer el documento: Integridad referencial.doc. En l se explica cmo han de utilizarse las tablas relacionadas con Foreign Keys. As que tenemos que dar de alta las tablas: CLIENTES, PRODUCTOS, PEDIDOS, DET_PEDIDOS. *Nota: Es muy importante que demos de alta las tablas con el motor de almacenamiento InnoDb para poder relacionar unas tablas con otras.
CLIENTES: id_cliente (clave primaria): Numrico con autoincremento de 5 posiciones. nombre: Alfanumrico de 80 posiciones e-mail: Alfanumrico de 100 posiciones e ndice nico. direccion: Alfanumrico de 200 posiciones telefono: Numrico de 50 posiciones fec_alta: Date de 10 posiciones
Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information
A continuacin se proporciona el cdigo SQL para aadir la tabla CLIENTES a la base de datos: MySQL: CREATE TABLE `clientes` ( `id_cliente` INT( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY , `nombre` VARCHAR( 80 ) NOT NULL , `e-mail` VARCHAR( 100 ) NOT NULL , `telefono` VARCHAR( 50 ) NULL , `direccion` VARCHAR( 50 ) NULL , `fec_alta` DATE NOT NULL , UNIQUE (`e-mail`)) ENGINE = INNODB; PRODUCTOS: id_producto (clave primaria): Numrico con autoincremento de 5 posiciones. nombre: Alfanumrico de 80 posiciones. descripcion: Alfanumrico de 250 posiciones. precio: Numrico de 10 posiciones. foto: Alfanumrico de 250 posiciones **Nota: El campo foto no contendr ninguna imagen, solo estar informado con la ruta donde est guardada dicha foto, para as no sobrecargar nuestra base de datos con datos innecesarios. A continuacin se proporciona el cdigo SQL para aadir la tabla PRODUCTOS a la base de datos: MySQL: CREATE TABLE `productos` ( `id_producto` INT( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY , `nombre` VARCHAR( 80 ) NOT NULL , `descripcion` VARCHAR( 250 ) NOT NULL , `precio` INT( 10 ) NOT NULL , `foto` VARCHAR( 250 ) NOT NULL , INDEX ( `nombre` ) ) ENGINE = INNODB; PEDIDOS: id_pedido (clave primaria): Numrico con autoincremento de 5 posiciones. id_cliente (clave fornea de CLIENTES): Numrico de 5 posiciones fec_alta A continuacin se proporciona el cdigo SQL para aadir la tabla PEDIDOS a la base de datos: DET_PEDIDOS: MySQL: Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information CREATE TABLE `pedidos` ( `id_pedido` INT( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY , `id_cliente` INT( 5 ) NOT NULL , `fec_alta` DATE NOT NULL , INDEX ( `id_cliente` ) ) ENGINE = MYISAM ; id_detPedido (primaria): Numrico con autoincremento de 5 posiciones. id_pedido (clave fornea de PEDIDOS): Numrico de 5 posiciones id_producto (clave fornea de PRODUCTOS): Numrico de 5 posiciones cantidad: Numrico de 5 posiciones. precio: Numrico de 5 posiciones. A continuacin se proporciona el cdigo SQL para aadir la tabla DET_PEDIDOS a la base de datos: MySQL: CREATE TABLE `det_pedidos` ( `id_detpedido` INT( 5 ) NOT NULL AUTO_INCREMENT , `id_pedido` INT( 5 ) NOT NULL , `id_producto` INT( 5 ) NOT NULL , `cantidad` INT( 5 ) NOT NULL , `precio` INT( 5 ) NOT NULL , PRIMARY KEY ( `id_detpedido` ) , KEY `id_pedido` ( `id_pedido` , `id_producto` ) , KEY `id_producto` ( `id_producto` ) ) ENGINE = INNODB DEFAULT CHARSET = utf8 AUTO_INCREMENT =1; Con estas 4 tablas ya tenemos completa nuestra base de datos MySQL para crear un carrito de compras. Es momento de empezar a codificar nuestra aplicacin en PHP. Inserta algunos registros en tu base de datos: Ejemplo: INSERT INTO tablaX VALUES (2, 'Jimmy Martnez'); INSERT INTO tablaX VALUES (3, 'Daniel Mena');
Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information
F8 C2'(.)H ,/ 0I0 5 B5CAJ Un carrito de compra funciona bsicamente de la siguiente forma: 1. El usuario entra en la web y se crea una sesin nueva. 2. El usuario aade un producto al carro de la compra. 3. Una pgina PHP recibe los datos y lo almacena en variables de sesin. 4. PHP redirecciona a otra pgina que muestra los datos del carro al Usuario dndole la opcin de seguir comprando o bien realizar la compra. 5. Una vez que el usuario est conforme con el carro de la compra y la cantidad de productos, realiza la compra. Diseo y estructura en el cdigo de la interfaz Vamos a dar una breve explicacin de cmo estructuraremos la pgina donde mostraremos los productos, la cual la construiremos de manera modular al igual que todo el resto de la interfaz. Vamos a dividir la pgina en 9 archivos distintos para tener un cdigo ms entendible y no tener que repetir las mismas lneas en cada una de las pginas, permitiendo una modificacin ms amena a futuro. La interfaz se compondr de los siguientes archivos: main.css: Hoja de estilos de la pgina. conecta.php: Nos conecta con la base de datos. Este archivo tenis que modificarlo segn vuestros datos de acceso "host", "user", "pass". Opina sobre este cdigo. meta_tags.php: Incluye las etiquetas de inicio de html, meta tags y enlaces a las hojas de estilo. cabecera.php: Parte superior de la web, con el ttulo y lo que se quiere aadir pie.php: Incluye la parte del CopyRight o cualquier cosa que se quiera poner fuera del cuerpo. cierra_tags.php: Como su nombre indica, cerramos las etiquetas body y html productos.php: Una de las pginas ms importante del tutorial donde se muestran todos los productos que vamos a "vender". carro.php: Esta pgina mostrar la cesta de la compra y podremos aumentar y disminuir la cantidad de productos. Estos archivos se encuentran en la carpeta carroCompras1, en el que est la base de la interfaz, la cual se ira modificando durante el avance de este tutorial. Como se puede observar el diseo de este carro de compras es bsico, de lo que se trata en este tutorial es de tener unos conocimientos fundamentales de PHP. Una vez que disponemos de nuestra base de archivos, vamos a empezar a codificar nuestro carro de la compra: productos.php En esta pgina se mostrarn los productos que dados de alta en la tabla productos. Para el tutorial, hemos dado de alta unos cuantos y aqu est el cdigo para que tambin puedas incluirlos nuevos productos. Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information MySQL: INSERT INTO `productos` VALUES (1, 'Diseo Web Esttica', 850.00); INSERT INTO `productos` VALUES (2, 'Desarrollo CMS PHP y MySql', 2150.00); INSERT INTO `productos` VALUES (3, 'Diseo Logo', 210.00); INSERT INTO `productos` VALUES (4, 'Diseo Web (PSD)', 540.00); INSERT INTO `productos` VALUES (5, 'Formulario de Contacto', 52.00); INSERT INTO `productos` VALUES (6, 'Registro de Usuarios', 42.00); INSERT INTO `productos` VALUES (7, 'Animacin Flash', 120.00); INSERT INTO `productos` VALUES (8, 'Carrito de Compra', 590.00); 1. INSERT INTO `productos` VALUES (9, 'Alojamiento Web', 34.00); INSERT INTO `productos` VALUES (10, 'Dominio', 9.00); Ahora que tenemos los registros necesarios, es hora de mostrarlos en nuestra pgina de productos. Qu necesitamos en este archivo? 1. Iniciamos sesin 2. Conectar con nuestra base de datos 3. Acceder a la tabla productos y seleccionarlos 4. Mostrar tabla con Productos, Precio La pgina debe quedar como se presenta en esta imagen:
Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information
Ahora hay que abrir el archivo "productos.php" para aadir algunas lneas. Para empezar, lo primero que tenemos que hacer es iniciar sesin, as que antes de definir la variable $titulo, pondremos lo siguiente: PHP: //Iniciamos sesin o continuamos la que ya exista session_start(); Algunos estaris pensando Qu es una sesin en PHP?, cuando hablamos de sesin en PHP hablamos de un entorno que consiste en controlar el acceso individual a una pgina o grupo de pginas por medio de un identificador nico por visitante/usuario. Para que se entienda, si entramos en una tienda virtual como puede ser la de Nike. Si nos vamos a la zona de productos y aadimos un producto para despus seguir navegando por la web y buscar otro, cuando queramos Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information aadir un segundo producto, al no tener sesiones activas en el sistema, no podr recordar los productos que ya hemos elegido con anterioridad, perdiendo as los datos. Por tanto el uso de sesiones es imprescindible para montar una carrito de compra online. Una vez que conocemos para qu sirven las sesiones, vamos a ver como se almacenarn los datos en las variables de sesin. Crearemos un array bidimensional para almacenar el producto y la cantidad, de todos los productos que se vayan aadiendo al carrito de la compra. Para hacernos una idea ms grfica lo plasmaremos en una tabla: INDICE PRODUCTO (id) CANTIDAD 0 10 1 1 8 3 2 4 1 Otra imagen para entenderlo.
En la cesta de la compra del ejemplo de la imagen de arriba hay 2 productos, en concreto se han aadido a la cesta 3 Desarrollos CMS PHP y mySQL y 5 Diseos Web (PSD). En el array que se muestra, se ve claramente el ID del producto y su cantidad, que es con lo que vamos a jugar en todo momento dentro de nuestros archivos "productos.php" y "carro.php". Despus de esta pequea explicacin sobre sesiones en PHP y cmo utilizarlas en nuestra aplicacin, vamos a seguir con el cdigo. Una vez que tenemos nuestra sesin iniciada, tenemos que mostrar los productos en nuestra pgina, as que hay que conectar nuestro archivo PHP con la tabla de productos. Esto se consigue gracias al archivo que hemos incluido "conecta.php" (acordaros de configurar de acuerdo a la base de datos) lo nico que nos faltar ser definir la sentencia SQL que nos devolver lo que queremos: PHP: Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information //Sentencia SQL para obtener los productos de la tabla prodcuto $resultado = mysql_query("SELECT id, producto, precio FROM productos"); Bien, ya hemos definido la sentencia, la cual slo recoge los campos id, producto y precio (utilizar "SELECT *" en este caso es una manera absurda de sobrecargar nuestra base de datos, ya que los dems campos no nos hacen falta para nada), ahora quedara mostrarlos por pantalla. Como hay ms de un registro en la tabla productos tendremos que hacer uso de un bucle como puede ser la sentencia "while", asi que justo despus de definir las cabeceras de la tabla (que ya tenemos en el archivo que hemos descargado), vamos a realizar dicho bucle de la siguiente manera: PLAIN TEXT PHP: // comienza un bucle que leera todos los registros y ejecutara las ordenes //que siguen while ($productos = mysql_fetch_array($resultado)) { echo "<tr class='borde_tabla'><td style='display:none'>" . $productos['id'] . "</td>"; // id del producto que no se ver por pantalla echo "<td>" . $productos['producto'] . "</td>"; // imprime el nombre del producto echo "<td style='text-align:right'>" . $productos['precio'] . " ! </td>"; // imprime el precio echo "<td style='text-align:right'> <a href='carro.php?id=" . $productos['id'] . "&action=add' alt='Aadir al carro'> <img src='img/add_carro.png' width='48' height='48' alt='Aadir al carrito' title='Aadir producto al carrito'> </a> </td>"; echo "</tr>"; } // fin del bucle de ordenes Aqu tenemos bastantes cosas que explicar. Como puede verse el bucle recorrer uno por uno los registros que se han recogido de la sentencia SQL guardndolos en un array que hemos llamado "$productos". Cada uno de los campos se guardar en el array tal y como lo hemos nombrado en la sentencia SQL, es decir, cada registro se guardar en las siguientes variables del array: $productos['id'] $productos['producto'] $productos['precio'] Una vez impreso el id (aunque este lo hacemos invisible al navegador gracias al estilo display:none), el nombre del producto y el precio, falta por asignar en enlace en forma de imagen donde el usuario har clic para aadir o eliminar de la cesta segn ya lo haya aadido o no. Como se puede apreciar en el enlace que generamos, vamos a pasarle a la pgina "carro.php" un enlace con la siguiente estructura: Programacin Web Bases de datos + PHP CARRITO DE COMPRA EN PHP CON PAGO PAYPAL
Copyright 2013. Dr.c. Niels Henryk Aranda Cuevas. This document is ITSFCP Public Information Ejemplo: carro.php?id=2&action=add Este enlace lo que hace es pasarle el id del producto (en el caso del ejemplo sera el 2) y como variable accin el valor add, con lo cual le estamos diciendo al archivo carro.php, que aada a la cesta el producto nmero 2 (id=2 de la tabla productos). Con esto ya tenemos el archivo "productos.php" casi completo, faltara aadir la funcionalidad para que muestre un icono de aadir o un icono de eliminar segn si se haya aadido o no el producto en la cesta.
Excel para principiantes: Aprenda a utilizar Excel 2016, incluyendo una introducción a fórmulas, funciones, gráficos, cuadros, macros, modelado, informes, estadísticas, Excel Power Query y más
Ciberseguridad: Una Simple Guía para Principiantes sobre Ciberseguridad, Redes Informáticas y Cómo Protegerse del Hacking en Forma de Phishing, Malware, Ransomware e Ingeniería Social
La psicología del trading de una forma sencilla: Cómo aplicar las estrategias psicológicas y las actitudes de los comerciantes ganadores para operar con éxito en línea.
ChatGPT Ganar Dinero Desde Casa Nunca fue tan Fácil Las 7 mejores fuentes de ingresos pasivos con Inteligencia Artificial (IA): libros, redes sociales, marketing digital, programación...