El diseño de la tabla estáticamente sería así (con php cargo los códigos que me interesan, ese no es el problema:
Código PHP :
echo '<table border="1">'; echo "<tr>"; echo " <td rowspan='16'>" . nombre_pajaro($el) . "</td>"; $el1 = padre_pajaro($el, 'idPadre'); echo " <td rowspan='8'>(el1)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el1) . "'>" . nombre_pajaro($el1) . "</a></td>"; $el2 = padre_pajaro($el1, 'idPadre'); echo " <td rowspan='4'>(el2)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el2) . "'>" . nombre_pajaro($el2) . "</a></td>"; $el3 = padre_pajaro($el2, 'idPadre'); echo " <td rowspan='2'>(el3)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el3) . "'>" . nombre_pajaro($el3) . "</a></td>"; $el4 = padre_pajaro($el3, 'idPadre'); echo " <td rowspan='0'>(el4)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el4) . "'>" . nombre_pajaro($el4) . "</a></td>"; echo "</tr>"; $el5 = padre_pajaro($el3, 'idMadre'); echo " <td rowspan='0'>(el5)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el5) . "'>" . nombre_pajaro($el5) . "</a></td>"; echo "<tr>"; $el6 = padre_pajaro($el2, 'idMadre'); echo " <td rowspan='2'>(el6)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el6) . "'>" . nombre_pajaro($el6) . "</a></td>"; $el7 = padre_pajaro($el6, 'idPadre'); echo " <td rowspan='0'>(el7)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el7) . "'>" . nombre_pajaro($el7) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el8 = padre_pajaro($el6, 'idMadre'); echo " <td rowspan='0'>(el8)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el8) . "'>" . nombre_pajaro($el8) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el9 = padre_pajaro($el1, 'idMadre'); echo " <td rowspan='4'>(el9)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el9) . "'>" . nombre_pajaro($el9) . "</a></td>"; $el10 = padre_pajaro($el9, 'idPadre'); echo " <td rowspan='2'>(el10)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el10) . "'>" . nombre_pajaro($el10) . "</a></td>"; $el11 = padre_pajaro($el10, 'idPadre'); echo " <td rowspan='0'>(el11)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el11) . "'>" . nombre_pajaro($el11) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el12 = padre_pajaro($el10, 'idMadre'); echo " <td rowspan='0'>(el12)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el12) . "'>" . nombre_pajaro($el12) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el13 = padre_pajaro($el9, 'idMadre'); echo " <td rowspan='2'>(el13)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el13) . "'>" . nombre_pajaro($el13) . "</a></td>"; $el14 = padre_pajaro($el13, 'idPadre'); echo " <td rowspan='0'>(el14)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el14) . "'>" . nombre_pajaro($el14) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el15 = padre_pajaro($el13, 'idMadre'); echo " <td rowspan='0'>(el15)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el15) . "'>" . nombre_pajaro($el15) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el16 = padre_pajaro($el, 'idMadre'); echo " <td rowspan='8'>(el16)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el16) . "'>" . nombre_pajaro($el16) . "</a></td>"; $el17 = padre_pajaro($el16, 'idPadre'); echo " <td rowspan='4'>(el17)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el17) . "'>" . nombre_pajaro($el17) . "</a></td>"; $el18 = padre_pajaro($el17, 'idPadre'); echo " <td rowspan='2'>(el18)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el18) . "'>" . nombre_pajaro($el18) . "</a></td>"; $el19 = padre_pajaro($el18, 'idPadre'); echo " <td rowspan='0'>(el19)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el19) . "'>" . nombre_pajaro($el19) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el20 = padre_pajaro($el18, 'idMadre'); echo " <td rowspan='0'>(el20)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el20) . "'>" . nombre_pajaro($el20) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el21 = padre_pajaro($el17, 'idMadre'); echo " <td rowspan='2'>(el21)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el21) . "'>" . nombre_pajaro($el21) . "</a></td>"; $el22 = padre_pajaro($el21, 'idPadre'); echo " <td rowspan='0'>(el22)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el22) . "'>" . nombre_pajaro($el22) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el23 = padre_pajaro($el21, 'idMadre'); echo " <td rowspan='0'>(el23)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el23) . "'>" . nombre_pajaro($el23) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el24 = padre_pajaro($el16, 'idMadre'); echo " <td rowspan='4'>(el24)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el24) . "'>" . nombre_pajaro($el24) . "</a></td>"; $el25 = padre_pajaro($el24, 'idPadre'); echo " <td rowspan='2'>(el25)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el25) . "'>" . nombre_pajaro($el25) . "</a></td>"; $el26 = padre_pajaro($el25, 'idPadre'); echo " <td rowspan='0'>(el26)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el26) . "'>" . nombre_pajaro($el26) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el27 = padre_pajaro($el25, 'idMadre'); echo " <td rowspan='0'>(el27)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el27) . "'>" . nombre_pajaro($el27) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el28 = padre_pajaro($el24, 'idMadre'); echo " <td rowspan='2'>(el28)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el28) . "'>" . nombre_pajaro($el28) . "</a></td>"; $el29 = padre_pajaro($el28, 'idPadre'); echo " <td rowspan='0'>(el29)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el29) . "'>" . nombre_pajaro($el29) . "</a></td>"; echo "</tr>"; echo "<tr>"; $el30 = padre_pajaro($el28, 'idMadre'); echo " <td rowspan='0'>(el30)<a href='pedigri_pajaro.php?cod=" . nombre_pajaro($el30) . "'>" . nombre_pajaro($el30) . "</a></td>"; echo "</tr>"; echo "</table>";
El lío me lo he encontrado a la hora de intentarla hacer dinámicamente, es decir, pudiendo cambiar el número de generaciones que se muestran... Me lío con los for, los rowspan y demás. Hace tiempo que no me encontraba una dificultad de estas con php a ver si alguien se encontró en una similar y me da una ayudita
En cualquier caso acepto también alternativas más simples
Gracias a todos, un saludo.