![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 18.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Skrypt dostaje (int)categoryId. Ma za zadanie wyswietlic wszystkie produkty w tej kategori oraz jej wszystkich podkategoriach.
Metoda obiektu Category Kod public function getSubIds() { $sIDs = array(); if(($sub = $this->getSubcategories()) != null) { foreach($sub as $s) { $sIDs = array_merge($sIDs, $s->getSubIds()); } } else { $sIDs[] = $this->getId(); } return $sIDs; } gdzie getSubcategories() robie zapytanie sql po parent_id. Potem nastepuje tylko zamiana listy ID na "WHERE category_id=X OR category_id=Y OR ..." Pytanie czy da sie to jakos uproscic/zrobic szybciej. Ilość kategori tak jak na allegro. Osobną sprawa jest liczenie ilosci produktow w danej kategorii (i wszystkich jej podkategoriach). Czy liczyc to tak normalnie za kazdym razem czy moze dodac kolumne product_num do tabeli categories i modyfikowac ja przy zmianach produktow? Ten post edytował Teamon 26.12.2007, 22:56:12 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 255 Pomógł: 5 Dołączył: 20.03.2007 Skąd: Kraków Ostrzeżenie: (30%) ![]() ![]() |
... Potem nastepuje tylko zamiana listy ID na "WHERE category_id=X OR category_id=Y OR ..." Pytanie czy da sie to jakos uproscic/zrobic szybciej. zamiast tego mozesz zrobic tak:
lub w ogole nie pobierac ideków podkategorii i zrobic joina Nie wiem jaka masz strukture bazy to ci go teraz nie napisze. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 18.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
category: id, name, parent_id
product: id, name .... , category_id Hm... czyli przy pobieraniu podkategori pobierac od razu produkty tak? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 255 Pomógł: 5 Dołączył: 20.03.2007 Skąd: Kraków Ostrzeżenie: (30%) ![]() ![]() |
(IMG:http://forum.php.pl/style_emoticons/default/czarodziej.gif) Mozesz tez pobrac przy tym od razu kategorie, ale chyba lepiej osobno. Chociaz zalezy (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ten post edytował domis86 27.12.2007, 12:34:58 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 18.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Hm.. tak sie zastanawiam, bo produkty moga byc jedynie w kategori najnizszego poziomu.
A jakis pomysly co do liczenia ilosci produktow w danej kategori? |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 255 Pomógł: 5 Dołączył: 20.03.2007 Skąd: Kraków Ostrzeżenie: (30%) ![]() ![]() |
A jakis pomysly co do liczenia ilosci produktow w danej kategori?
albo jak bez subkategorii to:
Ten post edytował domis86 27.12.2007, 14:02:15 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 18.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Ale z subkategoriami i subkategoriami subkategorii i ich subkategoriami.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 21:30 |