![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 292 Pomógł: 0 Dołączył: 10.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mam takie tabele: KATEGORIA id kategoria_pl PODKATEGORIE id podkategoria id_kategoria KATALOG_FIRM id id_podkategoria nazwa_firmy Mam problem z zapytaniem mianowicie chcę wyświetlić wszystko na jednej stronie najprawdopodobniej w dwóch pętlach - tak myślę bo nie widzę innej opcji w taki sposób: PIERWSZA KATEGORIA pierwsza podkategoria druga podkategoria trzecia czwarta DRUGA KATEGORIA pierwsza podkategoria druga podkategoria czwarta itd. dodatkowo chciałbym, aby wyświetliły się tylko te podkategorie które mają jakieś odpowiadające im rekordy w tabeli katalog_firm Udało mi się zrobić cos takiego PIERWSZA KATEGORIA pierwsza podkategoria (5) druga podkategoria (3) trzecia (3) czwarta (1) DRUGA KATEGORIA pierwsza podkategoria (0) druga podkategoria (0) czwarta (3) ,ale nie mogę połączyć tego żeby tak gdzie jest zero aby się niewyświetlało, proszę o wskazówki rady i uwagi co do poprawności kodu i zapytań
|
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat ,ale nie mogę połączyć tego żeby tak gdzie jest zero aby się niewyświetlało No a dlaczego najpierw nie policzysz sumy, a dopiero potem jak bedzie wieksza od 0 nie wyswietlisz nazwy kategorii? W czym problem? Przeciez to tylko drobna zmiana kolejnosci i prosty IFps: pomijam juz fakt ze skrypt jest totalnie nie optymalny -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 292 Pomógł: 0 Dołączył: 10.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
A nie trzeba przypadkiem połączyć zapytanie2 z zapytanie3 ? bo tak jak ty mówisz nie bardzo mi się widzi.
bo liczbę rekordów wyświetlam przy pomocy innego zapytania niż podkategorie dlatego nie mam jak się odwołać do tego. Sam już nie wiem. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat bo liczbę rekordów wyświetlam przy pomocy innego zapytania No przeciez wiem/widze.teraz najpierw wyswietlasz podkategorie, a nastepnie dla niej liczysz liczbe. Zrob na odwrot. Najpierw policz liczbe, a dopiero potem, gdy liczba jest wieksza od 0, wyswietl podkategorie (echo $podkategoria;) Jest to zwykla zmiana kolejnosci paru ostatnich linijek twojego skryptu -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 292 Pomógł: 0 Dołączył: 10.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
hehe niewiedziałem, że to tylko tyle trza było zrobić.
DZIĘKUJĘ ! |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
ty sie tak nie ciesz. twoj skrypt nadal jest bardzo nie optymalny. Generowanie zapytan w petlach zagniezdzonych to jedno z najgorszych rozwiązan.
Moze to cie troche nakieruje http://nospor.pl/grupowanie-wynikow-n35.html -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 292 Pomógł: 0 Dołączył: 10.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
Nie chciałbym tutaj sypać moim kodem bo to prawie 200 linijek, ale cały czas się męczę z tymi zapytaniami i zagnieżdżeniami.
Przeczytałem ten artykuł i z tego co zrozumiałem jest tam opisane jak przy pomocy jednego zapytania stworzyć tablice i później przy pomocy pętli się odwoływać. Nasuwa mi się kilka pytań z tego względu, że jestem dość początkujący i cały czas się uczę i dowiaduję czegoś nowego. Mianowicie: 1. Czy stworzenie kategorii w których znajdują się podkategorie, a w tych podkategoriach znajdują się rekordy, które są stronnicowane i dodatkowo w każdy rekord można klinikąc i w nim wyświetla się jeszcze więcej informacji na temat tego rekordu - można to wykonać przy pomocy jednego zapytania ? 2. Czy wykonywać to w jednym pliku czy robić to na osobnych ? (robiąc na osobnych nie potrafiłem stworzyć pasku adresu w postaci: strona główna -> kategoria -> podkategoria -> produkt - ponieważ niepotrafiłem dodać getów) 3. A co przy każdym tworzeniu $_GET czy nie ma jakieś możliwości dopisywania do istniejącego adresu np. &podkategoria=2. W moim przypadku to męczące jest ponieważ za każdym razem gdy wchodzę "głębiej" i dopisuje GETy to robi się wielka kaszana, jak już chcę dopisać jakiś to muszę stworzyć już istniejący za pomocą np. index.php?strona=$get_strona&kategoria=$get_kategoria&podkategoria=$get_podkategoria, a jak bede mial tego jeszcze ze dwa i później zajdzie mi potrzeba coś zmodyfikować to będę to musiał wszędzie robić. Jak wy to rozwiązujecie ? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 08:56 |