crea una funzione ricorsiva
Codice PHP:
function get_level($parent=0){
$sql = 'SELECT FROM `tabella` WHERE `cat_parent_id` = '.$parent;
$res = mysql_query($sql);
$tree = array();
while($row = mysql_fetch_assoc($res)){
$tree[] = array('cat'=>$row,'children'=>get_level($row['id_categorie']));
}
return $tree;
}
$tree = get_level();
praticamente così dovresti trovarti una struttura del genere
Codice PHP:
array(
'0' => array(
'cat' => ....,//array associativo categoria primo livello
'children' => array() //se questa categoria non ha sottocategorie
),
'1' => array(
'cat' => ....,
'children' => array(
'0'=>array(
'cat'=>...,
'children' => ....//e via così
)
) //se questa categoria ha sottocategorie
)
);