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

Ajuda com Script


wendcastro

Pergunta

Olá pessoal, queria uma ajudinha no código abaixo:

<?php
//busca as categorias
$queryCat = mysqli_query($con, "SELECT * FROM menu where id_submenu = 0");
// $categoria = mysql_fetch_array($queryCat);
//busca as sub-categorias
$querySub = mysqli_query($con, "SELECT * FROM menu where id_submenu <> 0");
// $subCat = mysql_fetch_array($querySub);


echo 'Menu<br>';

while($row_cat = mysqli_fetch_array($queryCat)){
echo $id_atual;
echo '-'.$row_cat['item'].'<br>';
$id_atual = $row_cat['id'];
if($row_cat['sub'] == 's'){
while($row_sub = mysqli_fetch_array($querySub)){
if($row_sub['id_submenu'] == $id_atual){
echo '--'.$row_sub['item'].'<br>';
}
reset($row_sub);
}

}

}

mysqli_close($con);
?>

alguém pode me ajudar, ele esta imprimido isto:

Menu
-Sobre
1-Produtos
--Software
--Hardware
2-Suporte
3-Contato

mas deveria imprimir isto:

Menu
-Sobre
-Produtos
--Software
--Hardware
-Suporte

--Suporte TI
-Contato

o banco esta assim:

id id_submenu item link sub

1 0 Sobre # n

2 0 Produto # s

3 0 Suporte # s

4 0 Contato # n

5 2 Hardware # n

6 2 Software # n

7 3 Suporte TI # n

lógica:

menu categorias são todos onde id_submenu = "0", caso um deles tenha sub = "s" então ele entra no loop com uma query separando os que id_submenu <> 0;

loop para categoria caso tenha s loop para subcategoria.

se alguém poder disser onde estou errando sou muito grato! estou aprendendo sozinho php, obrigado!

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Eu faria esse script diferente, economizando até um campo na tabela rsrsrs:

<?php
$menus = mysqli_query($con, "SELECT * FROM menu where id_submenu = 0");

echo 'Menu<br>';

while($menu = mysqli_fetch_array($menus)) {
    echo '-'.$menu['item'].'<br>';
	$submenus = mysqli_query($con, "SELECT * FROM menu where id_submenu = {$menu['id']}");
	if (mysqli_num_rows($submenus) > 0) {
	    while($submenu = mysqli_fetch_array($submenus)) {
	        echo '--'.$submenu['item'].'<br>';
	    }
	}
}
?>

deixando a tabela sem o último campo:

id	id_submenu	item		link
1	0		Sobre		#
2	0		Produto		#
3	0		Suporte		#
4	0		Contato		#
5	2		Hardware	#
6	2		Software	#
7	3		Suporte TI	#
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...