Két while(mysql_fetch_array) egymásba ágyazása
sziasztok!
van két msql resultom főkategóriák és alkategóriák. ezekből tömböt csinálok és kiírnám őket szépen sorban, amolyan menü szerűen, pl:
-főkategória_1
- alkateg_1
- alkateg_2
-főkateg_2
- alkateg_3
- alkateg_3
stb...
a két tömb között a kapcsoló, h az alkateg 'alketeg_fo' mezője tartalmazza a főkategória IDjét amihez tartozik.
A következő ciklusokkal próbálkoztam:az eredmény vmiért az, h csak az első főkategóriánál írja ki az alkategóriákat, a többinél nem.
Nem nagyon értem h miért történik.
vmki, vmi ötlet?
Köszi!
rrróka
■ van két msql resultom főkategóriák és alkategóriák. ezekből tömböt csinálok és kiírnám őket szépen sorban, amolyan menü szerűen, pl:
-főkategória_1
- alkateg_1
- alkateg_2
-főkateg_2
- alkateg_3
- alkateg_3
stb...
a két tömb között a kapcsoló, h az alkateg 'alketeg_fo' mezője tartalmazza a főkategória IDjét amihez tartozik.
A következő ciklusokkal próbálkoztam:
while ($egy_fokat=mysql_fetch_array($fokategoriak)){
print $egy_fokat['ss_kateg_nev']."<br />";
while($egy_alkat=mysql_fetch_array($alkategoriak)){
if($egy_alkat['alkateg_fo']==$egy_fokat['id']){
print $egy_alkat['alkateg_nev']."<br />";
}
}
}
Nem nagyon értem h miért történik.
vmki, vmi ötlet?
Köszi!
rrróka
Akkormost
Van 2 result $fokategoriak és $alkategoriak. Ez már alapból nemtúllogikus, ha engem kérdezel, elég lenne egy result, és lenne minden kategóriának egy parent tulajdonsága. Aminek 0-a parentje az főkategória. De ehhez más szerkezet kéne...
Tehát a jelenség amit kapsz nagyon egyszerű:
Amikor először csinálja az külső while-t, belép a belsőbe, kiszedi az összes result-ot és a 2. menetnél már mindig false lesz a mysql_fetch_array($alkategoriak).
A problémád megoldása kicsit bonyolult, most hirtelen csak az jutott eszembe, hogy gyűjtsd tömbbe az alkategóriákat és aztán pörgesd végig azt a tömböt foreach-csel. Valahogy így:
üdv. krey
müxik
a másik megoldásom az lett volna, h a főkateg kiírása után csinálok mégegy lekérést WHERE-rel, dez az ugye bazira megterhelné a szervert.
ez így teszik, köszönöm szépen! régóta szenvedtem vele, ebből látszik milyen káros ha az ember leragad egy megoldásnál...
köszi!!!