webmaster

Calcular Os Produtos Mais Vendidos

Olá, Somos criadores de conteúdo apaixonados por web design, programação, criação de websites e tecnologias digitais. O nosso website está online! Explore a nova versão beta, onde terá acesso a novos recursos e melhorias. A sua experiência e feedback são muito importantes para nós! Novos artigos, todas as semanas! Fique atento.
Artigos SEO

Artigos SEO

Search Engine Optimization

Artigos WordPress

Criação de websites.

Tutoriais

Ensino numa série de passos simples

Calcular Os Produtos Mais Vendidos

Quem trabalha desenvolvendo sites e sistemas para a Internet, uma hora ou outra receberá um desafio!

Um dos sistemas que desenvolvi ao longo de minha carreira, foi um ecommerce! Você pode falar: Puxa, eu que tenho muito menos tempo de experiência e já desenvolvi algo similar. Sim, mas o primeiro que você desenvolve é sempre mais complicado, correto?

Como vários desenvolvedores já sabem, o serviço de programação (seja qual for a linguagem) é: 90% Base de Dados e 10% Programação. Por esse motivo, abaixo vamos dar um exemplo que sustentam essa idéia, onde criaremos um pequeno script que calcula número de produtos vendidos.

Como fazemos em todas as nossas matérias, em anexo temos disponível os ficheiros para que possas estudar e testar o conteúdo da matéria.

Criando As Tabelas Na Base De Dados MySQL

Antes de partirmos para a programação, vamos criar uma tabelinha simples, só para rodarmos a solução que estamos a criar.

Para isso, pegue o conteúdo do ficheiro script-sql.txt (disponível em anexo) e cole seu conteúdo no Programa utilizado para gerenciamento da base de dados.

Em nossas matérias utilizamos como padrão o MySQLFront ou o PHPMyAdmin. Caso tu também esteja utilizando outra solução é só colar o conteúdo no SQL Editor (conforme código abaixo).


----- CRIA A TABELA CARRINHO -----

CREATE TABLE `tbl_carrinho` (
`id_compra` int(4) NOT NULL auto_increment,
`id_produto` int(5) default '0',
`sessao` varchar(100) default '0',
`qtde` int(5) default '0',
`data` varchar(11) default '0',
PRIMARY KEY (`id_compra`)
);

INSERT INTO `tbl_carrinho` VALUES (67,71,'63552',1,'2010-13-08');
INSERT INTO `tbl_carrinho` VALUES (68,73,'',45,'2010-15-08');
INSERT INTO `tbl_carrinho` VALUES (69,68,'88181',95,'2010-15-08');
INSERT INTO `tbl_carrinho` VALUES (70,74,'',33,'2010-18-08');
INSERT INTO `tbl_carrinho` VALUES (71,72,'',9,'2010-25-08');
INSERT INTO `tbl_carrinho` VALUES (76,73,'0',44,'2010-25-08');

----- CRIA A TABELA DE PRODUTOS -----
CREATE TABLE `tbl_produtos` (
`id_produto` int(11) NOT NULL auto_increment,
`id_subcategoria` int(11) default '0',
`nome` varchar(150) default NULL,
`descricao` text,
`imagem1` varchar(200) default NULL,
`preco_atual` decimal(10,2) default NULL,
`status` int(1) default '0',
PRIMARY KEY (`id_produto`)
);

INSERT INTO `tbl_produtos` VALUES (68,1,'Produto 03','teste teste teste teste','1222299712-120x120-mai15061_62.jpg',10,1);
INSERT INTO `tbl_produtos` VALUES (69,1,'Produto 04','teste teste teste teste','1220666941-120x120-ea166698.jpg',25,1);
INSERT INTO `tbl_produtos` VALUES (70,1,'Produto 05','teste teste teste teste','1225836367-120x120-ft3018.jpg',10,1);
INSERT INTO `tbl_produtos` VALUES (71,1,'Produto 06','teste teste teste teste','1278626413_1218245569-120x120-ea11263.jpg',10,1);
INSERT INTO `tbl_produtos` VALUES (72,1,'Produto 07','teste teste teste teste','1219365607-120x120-clo11044.jpg',25,1);
INSERT INTO `tbl_produtos` VALUES (73,1,'Produto 08','teste teste teste teste','1227971872-120x120-clo06217.jpg',10,1);
INSERT INTO `tbl_produtos` VALUES (74,2,'Produto 02','teste teste teste teste','1278626448_1216074858-120x120-clo02224.jpg',20,1);
INSERT INTO `tbl_produtos` VALUES (164,0,'','','',0,1);
INSERT INTO `tbl_produtos` VALUES (166,0,'','','',0,1);
INSERT INTO `tbl_produtos` VALUES (167,0,'','','',0,1);
INSERT INTO `tbl_produtos` VALUES (168,1,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',6,1);
INSERT INTO `tbl_produtos` VALUES (169,1,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',6,1);
INSERT INTO `tbl_produtos` VALUES (170,1,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',12,1);
INSERT INTO `tbl_produtos` VALUES (171,1,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',2,1);
INSERT INTO `tbl_produtos` VALUES (172,1,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',8,1);
INSERT INTO `tbl_produtos` VALUES (173,1,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',8,1);
INSERT INTO `tbl_produtos` VALUES (174,1,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',4,1);
INSERT INTO `tbl_produtos` VALUES (175,1,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',32,1);
INSERT INTO `tbl_produtos` VALUES (176,1,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',2,1);
INSERT INTO `tbl_produtos` VALUES (177,2,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',4,1);
INSERT INTO `tbl_produtos` VALUES (178,2,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',2,1);
INSERT INTO `tbl_produtos` VALUES (179,2,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',4,1);
INSERT INTO `tbl_produtos` VALUES (180,2,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',4,1);
INSERT INTO `tbl_produtos` VALUES (181,2,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',8,1);
INSERT INTO `tbl_produtos` VALUES (182,2,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',19,1);
INSERT INTO `tbl_produtos` VALUES (183,2,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',8,1);
INSERT INTO `tbl_produtos` VALUES (184,3,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',1,1);
INSERT INTO `tbl_produtos` VALUES (185,3,'Produto Exemplo','

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas dictum lorem sed urna. Suspendisse mattis lectus. Praesent quis leo vitae tortor placerat fermentum. Aliquam urna. Nunc pharetra. Ut vehicula sagittis orci. Aenean euismod aliquam massa. Vivamus

','produto_detalhes.jpg',0,1);

Após criar a tabela e importar os dados disponíveis acima, você poderá configurar o script de conexão à base de dados.

Configurando O Script De Conexão

Para efetuar a configuração devida, acesse o script “conexao.php” e siga o exemplo a seguir:



Após efetuar essa configuração, vamos conhecer o script que fará o select personalizado trazendo os produtos mais vendidos?

Calcular Os Produtos Mais Vendidos

O script abaixo não tem segredo. Para implementar à sua solução, basta entender um pouco de PHP e seguir o que está descrito no SELECT (conforme o script abaixo).


SELECT SUM(qtde) AS qtde,
id_produto FROM tbl_carrinho
GROUP BY id_produto order by qtde desc

Observações:

Veja que acima buscamos dentro do “SUM” o campo qtde. Agrupamos por “id” e Ordenamos pela quantidade.

Abaixo você pode conferir como ficou o script!



&size=120&quality=100&nocache=0" border="0">

Na hora de testar, você verá que ao passar o mouse em cima da imagem ou no nome do Produto, o sistema trará a quantidade de Produtos.

produtos mais vendidos

Claro, como um bom desenvolvedor, você não vai deixar desta maneira em sua Loja virtual (principalmente se forem poucos produtos); É só para você testar a solução.

Espero que esse script lhe seja útil e prático no dia a dia. Ok?

ficheiros.zip

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)

Deixe o seu comentário, participe!

Leave a Reply

Your email address will not be published. Required fields are marked *


Versão Beta

Estamos a mudar

Olá, Somos criadores de conteúdo apaixonados por web design, programação, criação de websites e tecnologias digitais. Ajudamos os nossos clientes a levar o conteúdo certo às pessoas certas, criando artigos e recursos que facilitam a criação e otimização de websites.

Artigos Populares

Guia Prático Sobre Segurança Do Joomla

Dicas para diminuir substancialmente o número de vetores de ataque ao Joomla! Proteja o seu trabalho!

Os Segredos Do Sucesso Na Internet

A responsabilidade. O querer. O erro e a experimentação. O social. A memória da internet. Ser quem você é.

38 Ideias Espetaculares Para Sites De Empresas

Encontre inspiração nestes 45 exemplos de sites de empresas para criar o site da sua empresa.