Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Produkty z kategorii i podkategorii
arturpiotrowski
post
Post #1





Grupa: Zarejestrowani
Postów: 71
Pomógł: 1
Dołączył: 6.12.2016

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


Witam jestem tu nowy i dopiero zaczynam swoją przygodę z PHP, HTML ogarniam już chyba całkiem dobrze więc pora wejść na wyższy poziom i pomyśleć o PHP/MySQL

Mam przykładową bazę ze strukturą tabel
  1. CREATE TABLE `kategorie` (
  2. `kategoria_id` smallint(5) UNSIGNED NOT NULL,
  3. `rodzic_id` smallint(5) UNSIGNED NOT NULL DEFAULT '1',
  4. `kategoria` varchar(60) NOT NULL
  5. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  6. INSERT INTO `kategorie` (`kategoria_id`, `rodzic_id`, `kategoria`) VALUES
  7. (1, 0, 'Produkty'),
  8. (2, 1, 'AGD'),
  9. (3, 1, 'RTV'),
  10. (4, 2, 'Miksery'),
  11. (5, 2, 'Tostery'),
  12. (6, 3, 'Telewizory'),
  13. (7, 3, 'Kina domowe');
  14. CREATE TABLE `kat_produkty` (
  15. `id` int(10) UNSIGNED NOT NULL,
  16. `kategoria_id` smallint(5) UNSIGNED NOT NULL,
  17. `produkt_id` int(10) UNSIGNED NOT NULL
  18. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  19. INSERT INTO `kategorie_produkty` (`id`, `kategoria_id`, `produkt_id`) VALUES
  20. (1, 4, 4),
  21. (2, 5, 5),
  22. (3, 6, 1);
  23. (4, 6, 2);
  24. CREATE TABLE `produkty` (
  25. `produkt_id` int(10) UNSIGNED NOT NULL,
  26. `nazwa` varchar(255) NOT NULL
  27. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  28. INSERT INTO `produkty` (`produkt_id`, `nazwa`) VALUES
  29. (1, 'Produkt 1'),
  30. (2, 'Produkt 2'),
  31. (3, 'Produkt 3'),
  32. (4, 'Produkt 4'),
  33. (5, 'Produkt 5');

Jak powinno wyglądać zapytanie abym mógł wyciągnąć z tabeli produktów wszystkie produkty z kategorii "AGD" i podkategorii dla których id rodzica to id kategorii "AGD"?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Robiłbyś osobne kolumny do danego modułu, czy lepiej uprawnienia połączyć przecinkami, a później na stronie
Lo matko.... jakie kolumny....

Cytat
Nie jeden skrypt na tej zasadzie robiłem.
To, ze robisz skrypty bez znajomosci podstaw baz danych, nie znaczy ze to jest dobrze i masz te "wiedze" wbijac innym.

NIe, zaproponowany przez ciebie model jest totalnie zly. Podejscie autora jest prawidlowe, procz rzecz jasna faktu, ze wybral zla strukture na drzewo.
Tak, tworzy sie wlasnie tabele wiazaca produkty z kategoriami i tak, dla kazdej pary produkt-kategoria tworzy sie kolejny rekord w bazie. Dzieki temu mozna robic wszelke niezbedne operacje na bardzo duzych bazach bardzo szybko.

Go to the top of the page
+Quote Post

Posty w temacie
- arturpiotrowski   [MySQL]Produkty z kategorii i podkategorii   6.12.2016, 17:47:55
- - Niree   [PHP] pobierz, plaintext CREATE TABLE `kat_produkt...   6.12.2016, 18:19:59
- - arturpiotrowski   Rozumiem że myślisz o wrzuceniu kategorii i podkat...   6.12.2016, 18:45:16
- - rad11   Sprobuj to: [PHP] pobierz, plaintext  Select ...   6.12.2016, 18:51:13
- - arturpiotrowski   Czy to co dopisałem wymaga aby zrobić to rekursywn...   6.12.2016, 19:13:56
- - rad11   Tak do tego będziesz musiał użyć funkcji rekursywn...   6.12.2016, 19:21:34
- - nospor   Zacznij od przygotowania poprawnej struktury drzew...   6.12.2016, 20:03:45
- - Niree   [HTML] pobierz, plaintext Rozumiem że myślisz o wr...   6.12.2016, 21:35:02
- - nospor   CytatPrzy wyświetlaniu patrzysz, czy w danej kolum...   6.12.2016, 21:38:21
|- - Niree   Cytat(nospor @ 6.12.2016, 21:38:21 ) ...   6.12.2016, 21:42:34
- - nospor   CytatRobiłbyś osobne kolumny do danego modułu, czy...   6.12.2016, 21:48:29
- - Niree   Chyba przez Ciebie zacznę pić.   6.12.2016, 21:56:25
- - nospor   Jesli miedzy kieliszkami bedziesz studiowal podsta...   6.12.2016, 22:00:38
- - arturpiotrowski   nospor, dziękuję znalazłem to: http://www.eioba.pl...   6.12.2016, 22:17:56
- - nospor   Bo wybrales calkiem trudna implementacje drzewa. ...   6.12.2016, 22:34:37
- - arturpiotrowski   nospor, a mógłbyś podrzucić jakiś link z prostszą ...   6.12.2016, 22:56:37
- - nospor   No patrz, nie moge znalezc... domeny na ktorych to...   6.12.2016, 23:40:23
- - arturpiotrowski   Dzięki dobry człowieku, ta wersja wygląda na znacz...   7.12.2016, 11:42:29
- - nospor   CytatDobrze myślę że do dodania kategorii potrzeba...   7.12.2016, 13:56:21
- - arturpiotrowski   Jesli wezme zwyklym delete bez sprawdzenia czy usu...   7.12.2016, 14:55:35
- - nospor   Rozumiem. Mozesz dodac jeszcze mimo wszystko pole ...   7.12.2016, 15:20:45
- - arturpiotrowski   Już rozumiem chyba wszystko o co pytałem wcześniej...   8.12.2016, 10:32:20
- - nospor   Nie koniecznie. Pobierasz wpierw ID wszystkich szu...   8.12.2016, 11:02:10


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: 13.10.2025 - 12:33