Tenta assim:
<ul id="nav"> <? $consulta_rp = $conn->Execute("SELECT DISTINCT rp from tabela"); $num_consulta = $consulta_rp->RecordCount(); $controle = 0; while ($controle < $num_consulta) { $rp = $consulta_rp->fields['rp']; echo "<li><a href='#'>".$rp."</a>"; $consulta_rp->MoveNext(); $controle++; echo "<ul>"; $consulta_est = $conn->Execute("SELECT estabelecimento from tabela where rp ='$rp'"); $num_consulta2 = $consulta_est->RecordCount(); $controle2 = 0; echo $consulta_est; while ($controle2 < $num_consulta2) { $est = $consulta_est->fields['estabelecimento']; echo "<li><a href='#'>".$est."</a></li>"; $consulta_est->MoveNext(); $controle2++; } echo "</ul>"; echo "</li>"; //fechar dentro do while para abrir o menu seguinte } echo "</ul>"; ?>
Vê o que retorna