Ik wil een recursieve functie maken om alle moeder id's in op te slaan wanneer er een kind wordt geselecteerd in een menu. Maar ik krijg alleen een gevult array terug wanneer de functie binnen selectedIds niet opnieuw wordt aangeroepen (selected id is dus van hoofdmenu..).
Ik kan het wel oplossen met een SESSION, maar moet volgens mij ook anders kunnen ?
<?php
//get selected ids
function selectedIds($id, $id_array = array()) {
$sql = mysql_query("SELECT * FROM cms_menu WHERE id = '".$id."' ");
$result = mysql_fetch_array($sql);
$id_array[] = $result['id'];
if($result['parent_id']!="0") {
selectedIds($result['parent_id'] ,$id_array);
}
//finished
else {
return $id_array;
}
}
$sel_id = 7;
$array = selectedIds($sel_id);
//print_r($_SESSION['test']);
print_r($array ); // deze is dus alleen gevult wanneer hoofdmenu is geselecteerd..
?>