Hola pateketrueke,
Este es el código que me recomendo Triby:
Código PHP:
<?php
include ("menu_arbol/demo/conexion.php");
// Inicializas la matriz
$familia = array();
$result = mysql_query('SELECT * FROM subfam') or die(mysql_error());
while($row = mysql_fetch_assoc($result)) {
$idFamilia = $row['Familia'];
$descri = $row['Descripcio'];
// Verificas si ya se creo la matriz para el $padre
if(!isset($familia[$descri]))
$familia[$descri] = array();
// Agregas la informacion del foro donde corresponde
$familia[$descri][$fam] = $row;
}
// Puedes hacer un var_dump($foros); para que veas la estructura
// en $foros[0] quedan solo los foros que no tienen padre (es cero)
// segun tu ejemplo:
// $foros[0] tendra 1 => datos foro 1, 5 => datos foro 5
// $foros[1] tendra 2 => datos foro 2, 4 => datos foro 4
// $foros[2] tendra 3 => datos foro 3
// etc...
echo '<ul>';
listar_foros(0); // Ejecutas la funcion que creara el listado, partiendo del index
echo '</ul>';
return;
function listar_foros($idFamilia) {
$familia=array();
$arti = array();
foreach($familia[$descri] as $arti => $datos) {
echo '<li>';
echo "<a href=\"{$datos['link_del_foro']}\">{$datos['nombre_del_foro_']}</a>";
// Verificas si el foro tiene "hijos"
if(isset($familia[$arti])) {
echo '<ul>';
listar_foros($idFamilia);
echo '</ul>';
}
echo '</li>';
}
}
?>
y me da el error de Warning: Invalid argument supplied for foreach() in ...
Lo que no se es porque. LLevo toda la mañana y no lo entiendo.
Saludos y que termineis bien el año y empeceis mejor el siguiente