Ver Mensaje Individual
  #6 (permalink)  
Antiguo 08/04/2005, 01:27
NaughtyFer
 
Fecha de Ingreso: abril-2005
Mensajes: 16
Antigüedad: 19 años
Puntos: 0
Antes de nada, muchísimas gracias a todos por la rapidez de respuesta!!

Por desgracia, no las he visto hasta hoy! :(

Antes de mandaros el código, y explicaron por encima la estructura de tablas que tengo en la BD (que son bastantes líneas, y por eso no las quería poner aquí), os doy algunos detalles, y una pequeña explicación, OK?

Para empezar yo no utilizo MySQL, sino Oracle 9i. La función recursiva en cuestión está muy ligada a esto de los foros, y es que se trata de que muestre los títulos de las intervenciones en un foro (hecho "a pelo") en forma de árbol de directorios, de modo que hay una intervención inicial sobre un tema y 'n' respuestas a esa intervención o a otras intervenciones hijas de esa intervención, o hijas de hijas... No sé si me he explicado bien, me entendeis?

De manera que en el programa principal me conecto con la base de datos, y llamo a un primer procedimiento que extrae esa primera intervención inicial de una tabla de la BD que contiene SÓLO la intervenciones iniciales, y la pinta por pantalla como raíz del árbol:
function ConstruirArbol($bd, $NombreTema)
Y dentro de esta función llamo a la función recursiva propiamente dicha:
function PintarHijos($bd, $ID_Intervencion_Inicial)
Esta función intenta extraer los hijos de la intervención que se le pasa como parámetro (en caso de que los tuviera), y si los tiene, se va llamando recursivamente mientras haya intervenciones hijas que recuperar:
PintarHijos($bd, $ID_Intervencion_Hija);

Creeis que puede ser un problema de pasar las variables por referencia??

Muchísimas gracias de nuevo!!

Un saludo!!