Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z kategoriami/podkategoriami
Forum PHP.pl > Forum > PHP
mb83
Witam,
Potrzebuję zrobić coś takiego:

Nazwa kategorii
<li>nazwa podkategorii</li>

Problem podobno banalny, ale ja nie wiem jak się za to zabrać.

mam bazy:

branza (id, nazwa, id_podkat) oraz podkategoria (id, nazwa)

nie wiem czy dobre bo nie potrafię dostosować przykładów znalezionych w google dla moich potrzeb.

proszę o pomoc

zbychoCom
Ja zrobiłbym to tak:
  1. <ul>
  2. <li>Kategoria 1 (branża)
  3. <ul>
  4. <li>Kategoria 1.1</li>
  5. <li>Kategoria 1.2</li>
  6. </ul>
  7. </li>
  8. <li>Kategoria 2 ...</li>
  9. </ul>


Bazę danych zrobiłbym tak:
kategoria (id, nazwa, id_podkat)

Wartością sortowania byłby id_podkat. Wrzucasz do zapytania id i na jego podstawie wyszukujesz wszystkie rekordy, których id_podkat = id...

mb83
to znaczy że nie zakładałbyś drugiej bazy 'podkategoria'?
to skąd nazwy podkategorii wziąć?
noi jak zapytanie sql/php skonstruować bo właśnie tu nie daje rady.

Kshyhoo
Musisz dostosować do swoich potrzeb:
  1. $kat_list = "";
  2. $sel = "";
  3. $result = dbquery("SELECT kat_id, kat_kategoria FROM kategorie WHERE kat_cat='0' ORDER BY kat_order");
  4. if (dbrows($result) != 0) {
  5. while ($data = dbarray($result)) {
  6. $result2 = dbquery("SELECT kat_id, kat_kategoria FROM kategorie WHERE kat_cat='".$data['kat_id']."' ORDER BY kat_order");
  7. if (dbrows($result2) != 0) {
  8. $kat_list .= "<ul><b>".$data['kat_kategoria']."</b>";
  9. while ($data2 = dbarray($result2)) {
  10. $kat_list .= "<li>".$data2['kat_kategoria']."</li>";
  11. }
  12. $kat_list .= "</ul>";
  13. }
  14. }
  15. }
  16.  
  17. echo $kat_list;

Baza:
tutoriale
tut_id
...
kategorie
kat_id
kat_kategoria
kat_cat
kat_order
tut_kat
id_tut
id_kat

zrzut tabeli tut_kat:
  1. id_tut id_kat
  2. 1 2
  3. 2 2
  4. 2 4
  5. 3 2
  6. 3 4
  7. 4 6
  8. 5 6
  9. 6 6
  10. 7 6
  11. 8 7
  12. 8 6
  13. 9 6
  14. 10 2
  15. 10 6
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.