PHP - sous-sous-sous-cats?

  • Auteur de la discussion Auteur de la discussion XoSt
  • Date de début Date de début
WRInaute passionné
Bonjour,

Je souhaite en php faire quelque chose du genre :

aaa
aaa,uuu
aaa,bbb
aaa,ccc,xxx

bbb
bbb,bbb
bbb,ccc
bbb,ddd
bbb,ccc,ddd
bbb,eee,fff
bbb,ppp,rrr,zzz
bbb,bbb,bbb,bbb,bbb... etc

J'ai ma table :

id_cats - idparent_cats - titre_cats

genre :

1 - 0 - aaa
2 - 1 - uuu
3 - 1 - bbb
4 - 1 - ccc
5 - 4 - xxx



Comment afficher tout ça en php ? merci!
 
WRInaute discret
Code:
mysql_connect(blablabla)
mysql_select_db(blablabl)

$sql = mysql_query("SELECT * FROM table ORDER BY id_cats ASC");
while($result = mysql_fetch_array(sql)){

echo $result[id_cats]." - ".$result[idparentcats]." - ".$result[titre_cats]."<br>"; 
}


edit : oups tu veu reconstituer la chaine, c'est pas beaucoup plus compliqué


tu cré une boucle while qui va chercher la categorie mere tant qu"elle est différente 0 (si 0 ést ta catégorie principale) et bien sur en affichant au fur et à mesure.[/code]
 
WRInaute passionné
Justement j'ai un mal fou avec les boucles, si tu pouvais me filer le code ou un site qui explique les boucles très en détail.
 
Nouveau WRInaute
Va voir sur phpdebutant.org, c'est très bien pour les euh...?! débutant.
Essaie de bien comprendre les boucles for, while,... car c'est le béa ba de tout bon programmeur. Le plupart du temps, quand tu vas récupérer les résultats d'une requete, tu vas boucler dessus pour afficher les résultats comme te l'a montrer hcplayer.
 
WRInaute passionné
Euh je prog depuis 2 ans quand meme... j'ai juste du mal avec les boucles, j'ai beau lire 36 sites je n'ai toujours rien compris malheuresement :/

et phpdebutant c'est vraiment des tutos de naabs...
 
Nouveau WRInaute
J'ai été sur phpdeb y'a pas mal d'année quand je ne connaissais pas le php et ça ma très bien aidé.
Quant aux boucles, je ne vois pas ce que tu ne comprends pas. T'as disons deux types de boucles:
- les while qui bouclent à l'infini. Pour les arreter, tu leur renseigne une condition d'arret
- les for, généralement, tu les emploies quand ta besoin de passer tout en revue, d'utiliser des variables indicés,...

Bref tu peux utiliser l'une ou l'autre, si t'es plus à l'aise avec l'une ou l'autre, à toi de choisir.
 
WRInaute occasionnel
On peux rajouté que pour la boucle for on l'utilise surtout quand on sais combien de fois on a besoin de bouclé.

2 ans de programmation sans connaitre les boucles, c'est quand meme le premiere truc qu'on aprend, heureusement qu'en php ce n'est pas typé et qu'on s'embete pas avec les pointeurs, sinon tu serai largué. ;)
 
WRInaute discret
Code:
mysql_connect(blablabla)
mysql_select_db(blablabl)


function arborescence($param1,$param2 = "<br>"){
	$res = "";
// 0 est l'id de ta catégorie mère
while(id_cats!=0){

$requete_arborescence = mysql_query("SELECT * FROM table WHERE id_cats = $param1");

$arbo = mysql_fetch_array($requete_arborescence);

$res .= $arbo[id_cats]." - ".$arbo[idparentcats]." - ".$arbo[titre_cats].". $param2.$res;
	
$id_cats = $arbo['idparentcats'];
}
return $res;
}

voila ta boucle bouclée, pas évident de faire ca dans une fenetre de forum mais en dehors des erreurs diverses, ca doit passer ;)
tu peux caler cette fonction dans la boucle de mon premier poste et ca roulera, bonne chance.
 
WRInaute passionné
while(id_cats!=0)

ne fonctionnera pas car tu n'as pas initialisé id_cats
de plus il manque le "$"

XoSt, je te conseille l'excellent site du zéro, c'est là que j'ai appris le PHP, et leur tutoriel est simple et complet. faisable en peu de temps.
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut