Récursivité quand tu me tiens

livingdead Messages postés 9 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 30 décembre 2003 - 19 déc. 2003 à 11:44
davwart Messages postés 855 Date d'inscription mardi 19 novembre 2002 Statut Membre Dernière intervention 28 juillet 2009 - 30 déc. 2003 à 10:57
j'ai une requete qui traite de catégrorie, et ses catégories peuvent avoir une catégorie parent qui peut elle aussi avoir un parent etc ..............................

bon je récupére le tout en requete c ok

maintenant cela se complique

il faut que je passe le tout sous la forme d'1 tableau array
du style : Array [0] [ID]
[SOUS-THEME] Array ([0] [ID]
[SOUS-THEME] Array ([0] [ID]
[SOUS-THEME] ...

vla

et ben cela me semble pas évidant
j'ai essayer avec 2 function récursive, et je n'arrive pas a incrémenté mon tableau.

Alors si vous avez un bout de code ou un tuyay pour traiter cela je suis prenneur

Merci d'avance

Livingdead

5 réponses

floflotz Messages postés 240 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 6 janvier 2006
19 déc. 2003 à 19:05
>> "et ben cela me semble pas évidant"

si c'est pas évidant à toi, dis toi que pour nous, c'est incompréhensible !!!

explique un peu plus clairement stp ! les variables que t'as ? qu'est ce qu'il y a dans ta requete ? dans tes tables ? quel résultat attend tu ?

et toute cela en version francaise compréhensible :p
0
davwart Messages postés 855 Date d'inscription mardi 19 novembre 2002 Statut Membre Dernière intervention 28 juillet 2009 1
21 déc. 2003 à 02:26
en effet, impossible de comprendre ton message:
g bien compris ta premiere partie, g fait un truc du genre pour gerer des "favoris": une categorie qui peut contenir des caegories qui peuvent contenir des categories qui...

mais la deuxieme partie -> ?????????
0
livingdead Messages postés 9 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 30 décembre 2003
30 déc. 2003 à 10:41

exemple
 $lstCategorie[0] =>("ID"=>1, "LIBELLE"=>"Robe", 
                                    ["SOUS_THEME"] =>[0] array ("ID"=>2 "LIBELLE"=>"Robe", 
                                                                                   ["SOUS_THEME"]  ), 
                                                                    [1] array ("ID"=>3, "LIBELLE"=>"Robe", 
                                                                                   ["SOUS_THEME"]  )  
$lstCategorie[1] =>("ID"=>4 "LIBELLE"=>"Robe", 
                                    ["SOUS_THEME"] =>[0] array ("ID"=>5, "LIBELLE"=>"Robe", 
                                                                                   ["SOUS_THEME"]  ), 
                                                                    [1] array ("ID"=>6, "LIBELLE"=>"Robe", 
                                                                                   ["SOUS_THEME"]  ) 



vla a peur pret le résultat escompté

Livingdead
0
livingdead Messages postés 9 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 30 décembre 2003
30 déc. 2003 à 10:46
>>une categorie qui peut contenir des caegories qui peuvent contenir des categories qui..

c bien ce que que je cherche à faire, mais je dois représenter cela sous la forme d'un tableau multidimensionnel.

Merci Livingdead
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
davwart Messages postés 855 Date d'inscription mardi 19 novembre 2002 Statut Membre Dernière intervention 28 juillet 2009 1
30 déc. 2003 à 10:57
ok j'ai compris ce que tu veux faire..
voici un exemple que j'avais fait pour gerer des dossiers "favoris" , j'espere que ça pourra t'aider.

<?
function LoadChildBookmarks($parentid, $profid)
{
$childbooks= array();
$query = "SELECT Count(*) FROM bookmarks WHERE parentid=".$parentid." AND profileid=".$profid;
$result = mysql_query($query) or die (" Can't check table:".mysql_error()."

");
$res =mysql_fetch_array($result);

if ($res[0])
{
$query0 = "SELECT bookmarkid FROM bookmarks WHERE parentid=".$parentid." AND profileid=".$profid;
$result0 = mysql_query($query0) or die (" Can't check table:".mysql_error()."

");
while($res0 =mysql_fetch_array($result0))
{
$tmp= loadChildBookmarks($res0[0], $profid);
if($tmp)
{
$childbooks[$res0[0]]=$tmp;
}
}
}
$query2 = "SELECT bookmark FROM bookmarks WHERE bookmarkid=".$parentid." AND profileid=".$profid;
$result2 = mysql_query($query2) or die (" Can't check table:".mysql_error()."

");
$res2 =mysql_fetch_array($result2);
$childbooks[0]= $res2[0];
return $childbooks;
}
?>
<?
function LoadBookmarks($profid)
{
$bookmarks=array();
$query0 = "SELECT bookmarkid, bookmark FROM bookmarks WHERE parentid=0 AND profileid=".$_SESSION["CURRENTPROFID"];
$result0 = mysql_query($query0) or die (" Can't check table:".mysql_error()."

");

while($res0 =mysql_fetch_array($result0))
{
$tmp=loadChildBookmarks($res0[0], $profid);
if($tmp)
{
$bookmarks[$res0[0]]=$tmp;
}
}
return $bookmarks;
}
?>
0
Rejoignez-nous