Estoy desarrollando un menu de tipo arbolde forma dinamica y encontré uno divagando en la red, funciona perfectamente peero requiero que sea dinamico y estoy trabajando con php el, menu tipo arbol esta en javascript; hice algunas pruebas para que fuera automatizado en base a un numero y funciona perfecto, el detalle es qu cuando combino el php y el javascript ya no funciona correctamente, les dejo el codigo y voy explicando:
Este es el javascript original
Código:
La idea del javascript es armar un arreglo donde se va llenando el arbol, el primer numero antes del "|" es consecutivo, el segundo es donde se declara hijo de quien es en el arbol, el tercero la descripcion y el ultimo el link.<script type="text/javascript"> <!-- var Tree = new Array; // nodeId | parentNodeId | nodeName | nodeUrl Tree[0] = "1|0|Ingresos|#"; Tree[1] = "2|1|Mantenimiento|#"; Tree[2] = "3|1|Page 1.2|#"; Tree[3] = "4|3|Page 1.2.1|#"; Tree[4] = "5|1|Page 1.3|#"; Tree[5] = "6|2|Page 1.1.1|#"; Tree[6] = "7|6|Page 1.1.1.1|#"; Tree[7] = "8|6|Page 1.1.1.2|#"; Tree[8] = "9|1|Page 1.4|#"; Tree[9] = "10|9|Page 1.4.1|#"; //--> </script>
Hasta aqui sin problemas, de esto pase a esto:
Código:
En este codigo lo que intente es que mediante un ciclo con mis consultas ya establecidas anteriormente me genere el arbol. Aqún aqui no tengo problemas ya que mi consulta tiene 5 registros y el ciclo funciona a la perfección me trae el arbol con 5 registros.<script type="text/javascript"> <!-- var renglones=<?php echo $renglones; ?>; var x; var y; var z; // nodeId | parentNodeId | nodeName | nodeUrl var Tree = new Array; Tree[0] = "1|0|INGRESOS|#"; for(x=1; x<=renglones; x=x+1){ z=x; y=x+1; Tree[x] = y+"|1|"+z+"|#"; } //--> </script>
Ahora lo que intento es que en el valor de la variable z tenga el nombre del campo de mi base de datos que si lo obtengo mediante mi consulta, ya está revisado, de hecho abajo de mi codigo compruebo que realmente funcione ese query y todo bien pero el resultado del cambio es que me manda solo el nombre de uno de los campos en los 5 registros. Es decir mi resultado es:
INGRESOS
CAMPO5
CAMPO5
CAMPO5
CAMPO5
CAMPO5
Siendo que tengo 5 valores diferentes, este es el codigo que estoy manejando
Código:
Espero me puedan ayudar.<script type="text/javascript"> <!-- var renglones=<?php echo $renglones; ?>; var x; var y; var z; // nodeId | parentNodeId | nodeName | nodeUrl var Tree = new Array; Tree[0] = "1|0|INGRESOS|#"; for(x=1; x<=renglones; x=x+1){ <?php while ($row=mssql_fetch_array($result)){ ?> z="<?php echo $row['descripcion']; ?>"; y=x+1; Tree[x] = y+"|1|"+z+"|#"; <?php } ?> } //--> </script>
Saludos