Bom dia pessoal!
Gostaria de ajuda de vocês na listagem de categorias e subcategorias de forma que o HTML fique da forma correta.
Tabela do banco:
CREATE TABLE categorias(
id int(5) unsigned not null auto_increment,
id_pai int(5) unsigned not null,
nome varchar(20) not null,
Primary Key (id)
)
Função para montar o HTML:
function MontaMenu($id_pai, $arrayCats, $sub)
{
$catsSize = count($arrayCats);
if ($sub == 0)
{
$this->menu .= "<ul class='nav'>";
}
else
{
$this->menu .= "<ul class=\"sub-menu\">";
}
for ($i = 1; $i <= $catsSize; $i++)
{
if ($arrayCats[ $i ]['id_pai'] == $id_pai)
{
$cid = $arrayCats[ $i ]['id'];
$this->menu .= "<li>";
$this->menu .= "<a href=\"catalogo&cid=$cid\">";
$this->menu .= $arrayCats[ $i ]['categoria_pt'];
$this->menu .= "</a>";
// busca as subcategorias da categoria atual
self::MontaMenu( $arrayCats[ $i ]['id'], $arrayCats, 1 );
$this->menu .= "</li>";
}
}
$this->menu .= "</ul>";
return $this->menu;
}
Até funciona, contudo está listando desta forma:
<ul class='nav'>
<li><a href="catalogo&cid=1">Antenas</a>
<ul class="sub-menu"></ul>
</li>
<li><a href="catalogo&cid=2">Aros</a>
<ul class="sub-menu"></ul>
</li>
<li><a href="catalogo&cid=3">Baguetes</a>
<ul class="sub-menu"></ul>
</li>
<li><a href="catalogo&cid=4">Barra Chata</a>
<ul class="sub-menu">
<li><a href="catalogo&cid=5">Cantos arredondados</a>
<ul class="sub-menu"></ul>
</li>
<li><a href="catalogo&cid=6">Cantos vivos</a>
<ul class="sub-menu"></ul>
</li>
</ul>
</li>
</ul>
E o problema maior, é que quero usar Jquery Toggle para deixa-lo retrátil, e quando adiciono o JS para de funcionar o link e só funciona a função animada do Jquery.
Primeiramente gostaria da ajuda para listar o menu de forma correta, sem <ul></ul> desnecessários...
Podem me ajudar?
Fico no aguardo!
Valeeuu