Saludos.
Bien el asunto lo resolví de la siguiente manera:
Código PHP:
<?
function display_menu($parent, $level) {
$dbn = new DB_Sql;
$queryn = "SELECT * FROM " . TBL_CATEGORIAS . " WHERE id_padre='" . $parent . "' ORDER BY categoria";
$resultn = $dbn->query($queryn);
// display each child
while ($row = mysql_fetch_array($resultn)) {
// indent and display the title of this child
$mostrar = str_repeat(' ',$level).$row['categoria']."<br>";
for ($ne = 0; $ne <= $level; $ne++) {
$esp .= "-";
}
$mostrarf = "<option value=".$row['id_categoria'].">".$esp.$mostrar."</option>";
$esp = "";
echo $mostrarf;
// call this function again to display this
// child's children
display_menu($row['id_categoria'], $level+1);
}
}
?>
<select>
<? display_menu(0,0); ?>
</select>
No verdad no se si era la forma más "educada" de hacerlo, pero me funciona muy bien.
Ahora el problema lo tengo en armar el menu pero sólo con un grupo de Padre-Hija-Nieta y no todas.
Gracias a Cluster, quien efectivamente me envio al código exacto.