Bonjour,

j'utilise ce code pour remonter l'arborescence des éléments d'un menu
Ça fonctionne à moitié pour une raison que je ne comprends pas…

Vous comprenez pourquoi il s'arrête parfois de remonter l'arborescence alors qu'il y a un $cat_father_id (donc une catégorie au-dessus) qui existe encore ?

Moi je sèche…

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
	// get category array for cat dir
	$query = "SELECT cat_id, cat_name, cat_father_id FROM ".$glob['dbprefix']."Category ORDER BY cat_id DESC";
	$catArray = $db->select($query);
 
	// La dernière catégorie en bout de chaîne (transmise en paramètre par une fonction) 
	// C'est OK pour ça
	$dirArray[0] = $catName."/";
 
	// C'est là que ça doit se gâter :
	for ($j=0; $j<=count($catArray); $j++) {
		if($catArray[$j]['cat_id']==$cat_father_id) {
			$dirArray[$j+1]= $catArray[$j]['cat_name']."/";
			$cat_father_id = $catArray[$j]['cat_father_id'];
		}
	}
	krsort($dirArray);
	reset($dirArray);
	$dir = "";	
		foreach($dirArray as $key => $value){
	 		$dir.= $value;
	}
		return $dir;
Merci pour votre aide…