Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: kategorie i podkategorie - baza
Forum PHP.pl > Forum > PHP
Apo
Witam
Mam pytanie jak wydajnie przechowywać informacje o podkategoriach i kategoriach danego produktu. Trzeba ropatrzeć problem że głowna kategoria może nie mieć podkategorii lub mieć ich nieskończoną ilość, gdzie na znajduje sie dany produkt. Nie wiem zabardzo jak zorganizować to w bazie, gdzie zapisac kategorie głowne, podkategorie i wkońcu jak przypisać te wszystkie kategorie i podkategorie do danego produktu aby można go było łatwo przenosić (np tak jak te forum).

Pozdrawiam
wipo
W tabeli kategorie masz pole matka które okresla ID rekordu nadrzędnego. Jezeli jest to główna kategoria wrzucasz 0.
Wtedy funkcją rekurencyjną tworzysz menu itp
heaven
->Metoda 5<- jest ciakawa ale mozesz wybrac prostsza.

np.

  1. CREATE TABLE categories
  2. (
  3. categories_id int UNSIGNED NOT NULL AUTO_INCREMENT,
  4. parent_id int UNSIGNED,
  5. categories_name varchar(255),
  6.  
  7. ....
  8.  
  9. PRIMARY KEY (categories_id)
  10.  
  11. );


potem tabelka wiazaca product z kategoria (oprzydatna jesli jakis produkt moze wystepowac w dwoch kategoriach jednoczesnie)

  1. CREATE TABLE products_to_categories
  2. (
  3. products_id int UNSIGNED NOT NULL,
  4. categories_id int UNSIGNED NOT NULL,
  5. PRIMARY KEY (products_id, categories_id)
  6. );


no i

  1. CREATE TABLE products
  2. (
  3. products_id int UNSIGNED NOT NULL AUTO_INCREMENT,
  4. manufactures_id int UNSIGNED DEFAULT NULL,
  5. products_name varchar(255) NOT NULL,
  6. products_quantity int NOT NULL,
  7.  
  8. ....
  9.  
  10. PRIMARY KEY (products_id)
  11. );


taki sobie przyklad...
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.