Ver Mensaje Individual
  #21 (permalink)  
Antiguo 11/04/2005, 02:16
NaughtyFer
 
Fecha de Ingreso: abril-2005
Mensajes: 16
Antigüedad: 19 años
Puntos: 0
Hola de nuevo!!!

Me temo que no traigo buenas noticias. Después de despejar por un día la cabeza, y volver con fuerzas renovadas, me temos que seguimos en el mismo punto. :(

Ahora ya sólo tengo una función (la función recursiva), aunque la he cambiado ligeramente, sigue sin funcionar.

El código que antes estaba en la función ConstruirArbol($bd, $NombreTema), ahora ya está incorporado al script justo a continuación de la línea: $bd = ora_open($conexion);

De tal modo que ahora se llama a PintarHijos($bd, $ID, $pref); desde el código principal, y la función ha quedado así:

50 function PintarHijos($bd, $ID_Intervencion, $pref)
51 {
52 global $ID;
53
54 $ID = $ID_Intervencion;
55 $sql2 = "SELECT ID_Int, Titulo_Intervencion FROM REPLICA WHERE (ID_Int_precede = :ID)";
56 ora_parse($bd, $sql2, 0);
57 ora_bind($bd, "ID", ":ID", 10, 1);
58 ora_exec($bd);
59 while (ora_fetch($bd))
60 {
61 $ID_Int_Replica = trim(ora_getcolumn($bd, 0));
62 $Titulo_Int_Replica = trim(ora_getcolumn($bd, 1));
63 print("<BR>".$pref."<A HREF=Pag_3C-Dcho-Abajo.php?TituloIntervencionPadre=".urlencode($Tit ulo_Int_Replica)."&ID_Int_Padre=$ID_Int_Replica Target=Marco3C-DchoInf> $Titulo_Int_Replica</A>");
64 PintarHijos($bd, $ID_Int_Replica, $pref."&nbsp;&nbsp;|---");
65 }
66 }

He probado a no poner global $ID, pero entonces las llamadas recursivas son infinitas.
He probado a pasar el manejador de la BD ($bd), el identificador de la intervención ($ID_Intervencion), y luego los dos a la vez, por referencia, y me ha saltado este error:
"Warning: Ora_Fetch failed (ORA-01002: recuperacion fuera de secuencia -- while processing OCI function OFETCH/OFEN) in C:\Archivos de programa\Apache Group\Apache\htdocs\Fer\Pag_3C-dcho-arriba.php on line 59"

En fin, sigo abierto a sugerencias, o ideas, porque yo ya he agotado las mías.

Por qué es tan difícil trabajar con la función ora_fetch???

Venga chicos, un saludo, y, como siempre, muchas gracias!