Ver Mensaje Individual
  #8 (permalink)  
Antiguo 19/04/2002, 18:20
d^_^b
 
Fecha de Ingreso: diciembre-2001
Mensajes: 451
Antigüedad: 22 años, 3 meses
Puntos: 0
Re: El Php Es Recursivo???,

Bueno aca esta el codigo, destaco que esto es parte de un modulo que estoy haciendo para PostNuke 7.1, .ademas solo se puede graficar horizontalmente, esta implementado en base al algoritmo para recorrer arboles n-arios
igual con un poco de formateo se ve mas bonito.

el parametro IdOrg corresponde a la clave de organigrama que estamo desplegando como la empresa es grande, puede tener varios prganigramas, por pais o por oficina o departamente

antes de entrar en la funcion recursiva debe sdarsele como primer parametro la ID del nodo padre. asi la funcion buscara recursivamente los nodos que estan ligados al nodo padre y los deplegara

Código:
echo "<center><font class=\"pn-pagetitle\">"._SHOWCARGOS."</font></center><br>";

$select= "SELECT "
					."nuke_ISS_cargos.id, "
					."nuke_ISS_cargos.nombre, "
					."nuke_ISS_empleados.nombres, "
					."nuke_ISS_empleados.apellidos "
					."FROM "
					."nuke_ISS_cargos, "
					."nuke_ISS_empleados "
					."WHERE "
					."nuke_ISS_cargos.id_empleado = nuke_ISS_empleados.id AND "
					."nuke_ISS_cargos.id_organ = '$IdOrg' AND "
					."nuke_ISS_cargos.id_cargosup = '-1' ";


	$result= mysql_query($select) or die(_DBERROR.$select);

	if (mysql_num_rows($result) == 0){

		header("location: admin.php?module=ISSCAR&op=cargos&msg="._ERR_NOORGANIGRAMAS."");

	}else{

		list($id,$cargo,$nombres,$apellidos) = 
mysql_fetch_row($result);

		//Dibujando la tabla...

		echo "<table border=\"0\" bgcolor=\"#EEEEEE\" cellpadding=\"0\" cellspacing=\"5\" width=\"100%\"><tr>";

		echo "<td bgcolor=\"#FFFF00\"><b>$cargo</b><br>$nombres $apellidos<br></td>";

		//Funcion recursiva que 
recorre el organigrama y lo dibuja
		PlotCargo($id);

		echo "</tr></table>";
	}
eso es mas o menos, saludos y buena suerte