Código:
tengo ese codigo.....<?php $nodes = array( 'id'=>'1', 'parent_id'=>null, 'text'=>'Negocio', 'Nivel'=>'0', 'Fecha_inicio'=>'02-01-2012', 'Fecha_termino'=>'29-02-2012', 'files'=> array( 'id'=>'1', 'parent_id'=>'1', 'text'=>'Presupuesto', 'Nivel'=>'1', 'Fecha_inicio'=>'02-01-2012', 'Fecha_termino'=>'12-02-2012', 'files'=>array( 'id'=>'1', 'parent_id'=>'1', 'text'=>'Paquete', 'Nivel'=>'2', 'Fecha_inicio'=>'02-01-2012', 'Fecha_termino'=>'12-02-2012', ), array( 'id'=>'2', 'parent_id'=>'1', 'text'=>'Paquete2', 'Nivel'=>'2', 'Fecha_inicio'=>'02-01-2012', 'Fecha_termino'=>'12-02-2012', ), array( 'id'=>'3', 'parent_id'=>'1', 'text'=>'Paquete3', 'Nivel'=>'2', 'Fecha_inicio'=>'02-01-2012', 'Fecha_termino'=>'12-02-2012', ) ), array( 'id'=>'2', 'parent_id'=>'1', 'text'=>'Presupuesto2', 'Nivel'=>'1', 'Fecha_inicio'=>'03-01-2012', 'Fecha_termino'=>'08-02-2012' ), array( 'id'=>'3', 'parent_id'=>'1', 'text'=>'Presupuesto3', 'Nivel'=>'1', 'Fecha_inicio'=>'04-01-2012', 'Fecha_termino'=>'010-02-2012', 'files'=>array( 'id'=>'5', 'parent_id'=>'3', 'text'=>'Presupuesto3', 'Nivel'=>'2', 'Fecha_inicio'=>'04-01-2012', 'Fecha_termino'=>'010-02-2012', 'files'=> array( 'id'=>'6', 'parent_id'=>'5', 'text'=>'Paquete4', 'Nivel'=>'2', 'Fecha_inicio'=>'04-01-2012', 'Fecha_termino'=>'010-02-2012' ), array( 'id'=>'7', 'parent_id'=>'5', 'text'=>'Paquete5', 'Nivel'=>'2', 'Fecha_inicio'=>'04-01-2012', 'Fecha_termino'=>'10-02-2012' )), array( 'id'=>'8', 'parent_id'=>'1', 'text'=>'Presupuesto4', 'Nivel'=>'1', 'Fecha_inicio'=>'06-01-2012', 'Fecha_termino'=>'12-02-2012', ) ); $hola=recorro($nodes,0,$prueba,$i); function recorro($nodes,$id,$prueba,$i){ foreach($nodes as $key=>$value){ if (is_array($value)){ //si es un array sigo recorriendo if($value['parent_id']==$_GET['parent_id']) { print_r('array cero'); $prueba[$key]=$value; } recorro($value,$id,$prueba,$i); }else{ //print_r($prueba); //si es un elemento lo muestro // echo $key.': '.$value ; //echo '<br>'; //$prueba[$key]=$value; echo 'hola'; print_r($prueba); echo '|||||'; } // print_r($prueba); } echo 'chao'; return $prueba; } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es"> <head> <script type="text/javascript" src="jquery-latest.pack.js?200709092021"></script> <script type="text/javascript" src="acordeon3.js?200709092021"></script> </head> <body> <div id="Nombre" style="position: absolute; top:30x; left: 30px; width: 200px;height: 200px;"> <?php echo $_GET['Nombre'];?> </div> <div id="Nombre" style="position: absolute; top:100x; left: 150px; width: 200px;height: 200px;"> <?php echo $_GET['Fecha_ini'];?> </div> <div id="Nombre" style="position: absolute; top:190x; left: 240px; width: 200px;height: 200px;"> <?php echo $_GET['Fecha_ter'];?> </div> <?php foreach ($hola as $key=>$value) { if (is_array($value)) { if($value['parent_id']==$_GET['parent_id']) { if(is_array($value['files'])){ echo '</br>'; echo '<pre>';?> <div id="Nombres1" style="position: absolute; top:250x; left: 30px;"><a href="acordeon4.php" class="enlace" id="negocio"><?php print_r($value['text']); ?></a></div> <div id="Fechaini" style="position: absolute; top:300x; left: 150px; "><?php print_r($value['Fecha_inicio']); ?></div> <div id="Fechater" style="position: absolute; top:390x; left: 240px; "><?php print_r($value['Fecha_termino']); ?></div> <br/> <div id="diez" style="position: absolute; top:30x; left: 30px; width: 200px;height: 200px;"> </div> <? echo '</pre>'; }else{ echo '</br>'; echo '<pre>';?> <div id="Nombres" style="position: absolute; top:250x; left: 30px; width: 200px;height: 200px;"><?php print_r($value['text']); ?></div> <div id="Fechaini" style="position: absolute; top:300x; left: 150px; width: 200px;height: 200px; "><?php print_r($value['Fecha_inicio']); ?></div> <div id="Fechater" style="position: absolute; top:390x; left: 240px; width: 200px;height: 200px;"><?php print_r($value['Fecha_termino']); ?></div> <? echo '</pre>'; } } } } ?> </body> </html>
cuando la funcion recorro.... esta dentro del if.... pareciera que prueba se pierde
en cierto momento.... por que cuando retorno vuelve vacio.... alguien puede saber por que es?
de antemano muchas gracias
saludos