Ir para conteúdo
Fórum Script Brasil
  • 0

Listar categorias e subcategorias


Lander de Oliveira Santos

Pergunta

Olá pessoal

 

Estou quebrando a cabeça para fazer com que o php liste as categorias e sub-categorias.do menu da página que estou fazendo.

A estrutura do menu deve ser esta

============================

Categoria 1

  • Subcategoria
  • Subcategoria
  • Subcategoria

Categoria 2

  • Subcategoria
  • Subcategoria
  • Subcategoria

Categoria 3

  • Subcategoria
  • Subcategoria
  • Subcategoria

==============================

 

Eu fiz a consulta e fiz com que as categorias sejam listadas, porém não estou conseguindo fazer listar abaixo de cada categoria suas respectivas sub-categorias.

 

Segue abaixo o código que estou usando para listar as categorias.

 

<?php
$sql = mysqli_query($conn, "SELECT * FROM categoria ORDER BY categoria ASC");
while($dados=mysqli_fetch_array($sql))
{
    echo '<li><span class="opener">' . $dados['categoria'] . '</span><ul>';
    echo '<li><a href="#">subcategoria</a></li>'; //E justamente nesta linha que preciso fazer aparecer as subcategorias que estão na tebela "sub_categoria"
    echo '</ul></li>';
}
?> 

A estrutura do banco de dados está assim:

Tabela categoria:

  • id
  • categoria
  • imagem

Tabela sub_categoria

  • id
  • id_categoria
  • sub_categoria
 

Se alguém puder me ajudar ficarei agradecido.

 

 

 
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

só fazer outro while dentro do primeiro, não é indicado mas vai funcionar:

     

  

<?php
$sql = mysqli_query($conn, "SELECT * FROM categoria ORDER BY categoria ASC");
while($dados=mysqli_fetch_array($sql))
{
    echo '<li><span class="opener">' . $dados['categoria'] . '</span><ul>';
	$sql_subcategoria = mysqli_query($conn, "SELECT * FROM sub_categoria WHERE id_categoria=".$dados['id']." ORDER BY sub_categoria ASC");
	while($dados_sub=mysqli_fetch_array($sql_subcategoria)){
    	echo '<li><a href="#">' . $dados_sub['sub_categoria'] . '</a></li>';
	}
    echo '</ul></li>';
}
?>  

 

Editado por ygor.anjos
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...