How to list the products in the categories?

1

Hello, I have this code to show the categories menu:

require_once ('./funcao/conecta.php');
$conn = conecta();
$sql = $conn->prepare("SELECT *  FROM 'loja'.'categorias' ORDER BY 'nome_categoria' ASC");
$sql->execute(array());
$sql->setFetchMode(PDO::FETCH_ASSOC);
$sql->execute();
while($linha = $sql->fetch()) {
$categoriaid = $linha['id_categoria'];
$nomecategoria = $linha['nome_categoria'];
echo'<li>';
echo'<a base64_encode href="./index.php?acao=add'.$linha['id'].'">'.$nomecategoria.'</a>';
echo'</li>';
}
echo'</div>';
echo '</div id="link"><div>';
echo'</div>';

And this code shows products with pagination:

require_once('./funcao/conecta.php');
$conn = conecta();
echo '<meta http-equiv="Content-Type" content="text/html; charset=utf-8">';
echo '<table width="100%" height="0" cellspacing="60" cellpadding="60">';
$i = 1;
$limite = 10;
$pg = (isset($_GET['pg'])) ? (int)$_GET['pg'] : 1;
$inicio = ($pg * $limite) - $limite;
$busca = $conn->prepare("SELECT * FROM 'produtos' ORDER BY 'id'  LIMIT $inicio,$limite");
$busca->execute(array());
$busca->setFetchMode(PDO::FETCH_ASSOC);
$busca->execute();
echo '<div id="Box">';
while ($linha = $busca->fetch(PDO::FETCH_ASSOC)) {
    echo '<td align = "center"><h2>' . $linha['nome'] . '</h2></br>';
    echo '<div align="loja"><img src=' . $linha['foto'] . '></a><a base64_encode href="./shop.php?acao=add&id=' . $linha['id'] . '"></br></br>';
    echo '<p align = "center"><button type="button" name="" value="" class="quero">Eu Quero!</button></p>';

    if ($i % 5 == 0) {
        echo "</tr><tr>";
    }
    $i++;
}
echo '<div class="clear"> </div>';
echo "</tr></table>";
//seleciona o total de registros
$sql_Total = 'SELECT * FROM 'produtos' ';
try {
    $query_Total = $conn->prepare($sql_Total);
    $query_Total->execute();
    $query_result = $query_Total->fetchAll(PDO::FETCH_ASSOC);
    //conta quantos registros tem no banco de dados
    $query_count = $query_Total->rowCount(PDO::FETCH_ASSOC);
    //calcula o total de paginas a serem exibidas
    $qtdPag = ceil($query_count / $limite);
} catch (PDOexception $error_Total) {
    echo 'Erro ao retornar os Dados. ' . $error_Total->getMessage();
}
//Cria os links para navega��o das paginas

echo ' <div class = "paginacao"><div align = "center" ><a href="?pg=1">Primeira Página</a>&nbsp;  ';
if ($qtdPag > 1 && $pg <= $qtdPag) {
    for ($i = 1; $i <= $qtdPag; $i++) {

        if ($i == $pg) {

            echo $i;

        } else {
            echo "<a href='index.php?pg=$i'>" . $i . "</a>";
        }

    }

}
echo "&nbsp;&nbsp; <a href=\"?pg=$qtdPag\">Última Página</a>  ";

My question is: how can I make the categories menu display the products generated by the second listing, that is, list the products in their respective category.

Here the used bank is:

-- phpMyAdmin SQL Dump
-- version 3.3.9.2
-- http://www.phpmyadmin.net
--
-- Servidor: 127.0.0.1
-- Tempo de Geração: Jan 07, 2016 as 09:44 PM
-- Versão do Servidor: 5.5.10
-- Versão do PHP: 5.3.6

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Banco de Dados: 'loja'
--
CREATE DATABASE 'loja' DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
USE 'loja';

-- --------------------------------------------------------

--
-- Estrutura da tabela 'categorias'
--

CREATE TABLE IF NOT EXISTS 'categorias' (
  'id' int(11) NOT NULL AUTO_INCREMENT,
  'id_categoria' varchar(255) DEFAULT NULL,
  'nome_categoria' varchar(255) DEFAULT NULL,
  PRIMARY KEY ('id'),
  KEY 'id_categoria' ('id_categoria')
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=8 ;

--
-- Extraindo dados da tabela 'categorias'
--

INSERT INTO 'categorias' ('id', 'id_categoria', 'nome_categoria') VALUES
(1, '1', 'Masculino'),
(2, '2', 'Feminino'),
(3, '3', 'Acessorios'),
(4, '4', 'Roupa Intima'),
(5, '5', 'Linha Saude'),
(6, '6', 'Cosmeticos'),
(7, '7', 'Linha Fitness');

-- --------------------------------------------------------

--
-- Estrutura da tabela 'produtos'
--

CREATE TABLE IF NOT EXISTS 'produtos' (
  'id' int(11) NOT NULL AUTO_INCREMENT,
  'id_produto' varchar(255) DEFAULT NULL,
  'foto' varchar(255) DEFAULT NULL,
  'nome' varchar(255) DEFAULT NULL,
  'descricao' longtext,
  'preco' varchar(255) DEFAULT NULL,
  'tamanho' varchar(255) DEFAULT NULL,
  'cor' varchar(255) DEFAULT NULL,
  PRIMARY KEY ('id'),
  KEY 'id_categoria' ('id_produto')
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=179 ;

--
-- Extraindo dados da tabela 'produtos'
--

INSERT INTO 'produtos' ('id', 'id_produto', 'foto', 'nome', 'descricao', 'preco', 'tamanho', 'cor') VALUES
(1, '2', 'fotos/aconchego.png', 'ACONCHEGO', 'Material sintético de alta qualidade. Solado em Poliuretano de 3 cm. Tecnologia para quem quer pisar com maciez e conforto. Tiras em sintético com cetim.', 'R$ 182,00', '33 ao 40', 'Preto,Vermelho,Marrom'),
(2, '2', 'fotos/adele.png', 'ADELE', 'Em material sintetico de alta qualidade e com detalhes trabalhados. Forro touch em Poliuretano. Fivelas douradas e palmilhas forradas.', 'R$ 233,00', '33 ao 39', 'Cor única'),
(3, '2', 'fotos/afrika.png', 'AFRIKA', 'Com material sintetico estampado com o tema onça.Forro interno em touch,com espuma na parte traseira e palmilhas forradas.Solado em TR antiderrapante,confortavel e leve, com salto dourado de 2cm.', 'R$ 198,00', '33 ao 39', 'Cor única'),
(4, '2', 'fotos/aline.png', 'ALINE', 'Toda em couro legítimo, palmilha em couro touch com detalhes em couro. Solado PU de 12cm, zíper traseiro de alta resistência.', 'R$ 303,00', '33 ao 39', 'Bordô,Preto e Azul'),
(5, '2', 'fotos/aluska.png', 'ALUSKA', 'Sintetico de alta qulidade,palmilha forrada e forro touch interno.Salto dourado de 2cm.', 'R$ 197,00', '33 ao 39', 'Vinho,Metal,Bronze,Metal,Bordo'),
(6, '2', 'fotos/amora.png', 'AMORA', 'Pedras do tipo strass em sintético de alta qualidade,super resistente. Solado em Poliuretano leve de 3cm .', 'R$ 160,00', '33 ao 40', 'Preto,Marrom'),
(7, '2', 'fotos/anaclara.png', 'ANA CLARA', 'Sintetico de qualidade com forro interno touch e palmilha e solado em Poliuretano com 8,5 cm.', 'R$ 246,00', '33 ao 39', 'Azul,Bic,Bordô,Creme'),
(8, '2', 'fotos/angelica.png', 'ANGELICA', 'Sintético de alta qualidade com forro interno em touch e tiras em couro. Solado em Poliuretano em 3,5 cm de altura.', 'R$ 187,00', '33 ao 40', 'Cor única'),
(9, '2', 'fotos/anita.png', 'ANITA', 'Em couro tipo nobuck e forro touch e solado em Poliuretano.salto de 8 cm.', 'R$ 319,00', '33 ao 39', 'Cor única'),
(10, '2', 'fotos/anna.png', 'ANNA', 'Totalmente em couro,com várias estampas e cores com forro espumado e solado em TR super aderente.', 'R$ 297,00', '33 ao 39', 'Floral,Branco,Copacabana,Revista'),
(11, '2', 'fotos/avila.png', 'AVILA', 'Flotter sintético. Possui palmilha em Poliuretano, solado com 8,5 cm de altura,trazendo fachetas delicadas com forro touch.', 'R$ 253,00', '33 ao 39', 'Preto,Musgo,Azul Bic,Terra'),
(12, '2', 'fotos/babu.png', 'BABU', 'Em sintético de alta qualidade,forro touch.Plataforma de 6 cm.', 'R$ 218,00', '33 ao 39', 'Verde,Terra,Preto'),
(13, '2', 'fotos/bambina.png', 'BAMBINA', 'Em couro com solado de 4,5 cm flexível, macio , leve com elástico na traseira.', 'R$ 223,00', '33 ao 39', 'Cor única'),
(14, '3', 'fotos/baronesa.png', 'BARONESA', 'Em couro trabalhado de dois tipos: flotter e cobra,Design elegante com botão externo traseiro. Alça com regulagem de tamanho.', 'R$ 878,00', 'único', 'Cor única'),
(15, '2', 'fotos/beatriz.png', 'BEATRIZ', 'Em couro legitimo,possui salto dourado com 2cm.Forrada internamente com forro pluma xadrez. Metais em couro envellhecido de alta qualidade.', 'R$ 319,00', '33 ao 39', 'Bordô,Floral,Musgo,Azul,Telha'),
(16, '2', 'fotos/biah.png', 'BIAH', 'Feita em couro natural,com imãs e infravermelho longo, forro interno touch.', 'R$ 218,00', '33 ao 39', 'Uva,Amarela,Telha,Red,Verde'),
(17, '1', 'fotos/billy.png', 'BILLY', 'Sapatênis de couro com design super moderno. Sola em TR e palmilha Confort em Poliuretano de alto conforto.', 'R$ 407,00', '37 ao 43', 'Marinho,Cinza,Marrom'),
(18, '3', 'fotos/classic.png', 'BOLSA CLASSIC', 'Bolsa especial em couro legítimo.Metais de alta qualidade e zíper reforçado.', 'R$ 616,00', 'único', 'Cor única'),
    
asked by anonymous 07.01.2016 / 21:47

0 answers