Salut à tous…
Le titre du sujet est un peu floue, je ne sais pas comment on appelle cette pratique, mais je vais essayer de l’expliquer.
J’ai une table du genre :
CATEGORY ( id, libelle, sid );
Qui contient pour exemple ces lignes :
1 ; Videos ; 0
2; Jeux ; 0
3 ; Action ; 1
4 ; Tir ; 2
C’est à dire que Action est un sous élément de Videos ( Videos > Action )
Et également que Tir est un sous élément de Jeux ( Jeux > Tir )
J’arrive à récupérer la catégorie d’origine, celle qui a pour sid = 0, je cherche la catégorie racine de Action, je procède comme ceci :
function get_parent_url($pcat_id){
$sidc = mysql_result(send_sql('SELECT `sid` FROM `category` WHERE `id` = '.$pcat_id),0);
if($sidc == 0) return get_cat_urls($pcat_id);
else get_parent_url($sidc);
}
Ca marche très bien… ça me retourne Vidéo, seulement, je me demandais s’il n’y avait pas une requête SQL permettant de faire ça en une fois ?
Normalement, il n’y aura pas plus d’un niveau… mais qui sait… et à ce moment là, ça risquerait de faire lourd… étant donné que la fonction serait appellée plus de 20 fois dans la meme page… je ne sais pas vraiment si ça prends énormement de ressources ce genre de requetes, c’est pourquoi je m’adresse à vous.
Merci !!