Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] Ograniczenie pętli
adam882
post
Post #1





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

Ostrzeżenie: (0%)
-----


Witam

Posiadam tabelę "kategorie" o takiej strukturze: id | nazwa | ile | parent. Kategorie główne mają "parent"=0, natomiast podkategorie zawierają w "parent", id kategorii głównej. Nie mam pomysłu jak to zrobić, aby ograniczyć wszystko do jednej pętli.

Obecnie wygląda to mniej więcej tak:
  1. <?php
  2. $q=mysql_query('SELECT id, nazwa FROM kategorie WHERE parent=0'); //Pobiera kategorię główną bez rodzica
  3. while($r=mysql_fetch_array($q))
  4. {
  5. echo '<b>Kategoria: '.$r['nazwa'].'</b><br />';
  6. $q2=mysql_query('SELECT * FROM kategorie WHERE parent='.$r['id'].''); //Pobiera podkategorie rodzica
  7. while($r2=mysql_fetch_array($q2))
  8. {
  9. echo 'Podkategoria: '.$r2['nazwa'].' ('.$r2['ile'].')<br />';
  10. }
  11. echo '<br />';
  12. }
  13. ?>


Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
adam882
post
Post #2





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

Ostrzeżenie: (0%)
-----


Mam coś takiego:

  1. SELECT k.nazwa AS cat_name, p.nazwa AS pod_name, p.ile AS pod_ile FROM kategorie k INNER JOIN kategorie p ON (p.parent=k.id) ORDER BY k.nazwa

Trochę dziwnie wygląda podwójne łączenie tej samej tabeli, ale cóż..

Troszkę teraz kombinuję z tym zapytaniem, aby zwracało mi nie tylko nazwę kategorii głównej, a potem listy podkategorii, ale również obok kategorii głównej pokazywało mi zliczoną ilość [ile] dla wszystkich podkategorii w danej kategorii. Ma ktoś może jakieś pomysły?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 7.10.2025 - 03:58