Bom dia amigos, Estou com um problema que talvez alguém aqui possa me ajudar: Eu tenho uma tabela no banco de dados na qual eu posso inserir diversos registros onde um registro pode ser filho de outro e assim por diante (sem limite de profundidade) Criei uma função para pegar estes registros respeitando a hierarquia e até ai tudo bem. Agora, porem, preciso implementar umas restrições, como descer na árvore até certo nível. Por exemplo: Suponha que a árvore tenha 10 níveis e eu preciso pegar uma sub árvore formada pelos 3 primeiros níveis. Segue a classe que gera a árvore, acho que estou indo no caminha errado para o que errado, mas se alguém puder dar uma ajuda, agradeço muito. <?php
class Rede{
function verifica_filho($id_pai, $mysql){
$consulta = $mysql->consulta("SELECT * FROM site_clientes WHERE CodigoIndicador=$id_pai");
if($mysql->qtLinhas($consulta)>0){
$this->lista_filhos($id_pai, $mysql);
}
}
function lista_filhos($id_pai, $mysql){
$consulta = $mysql->consulta("SELECT * FROM site_clientes WHERE CodigoIndicador= $id_pai");
while($linha = $mysql->lista($consulta)){
echo '<p> id: '.$linha['Codigo'].', id_pai: '.$linha['CodigoIndicador'].', Nome: "'.$linha['Nome'].'"</p>';
//echo "<br>";
$this->verifica_filho($linha['Codigo'], $mysql);
}
}
}
$rede = new Rede();
$rede->lista_filhos(68, $mysql);
?>