![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 21.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Znów mam problem z PHP. Wyciągam rekordy z bazy:
Wszystko śmiga, ale problem w tym że muszę dla 10 kategorii wyciągnąć rekordy i gdybym chciał to zrobić znanymi mi sposobami, musiałbym ten skrypt napisać jeszcze 10x i zmienić tylko nazwy zmiennych na kolejne... Czy mógłbym tak zrobić, że wziąć jeden skrypt w pętle FOR i utworzyć jakby zmienną w zmiennej? Działałoby to tak, że w pętli byłaby dodatkowa zmienna która za każdym 'okrążeniem' powiększała by się o 1, aż do 10. Zmienną tą wstawiłbym w te poprzednie zmienne: $cat{tutaj ta zmienna}_list, $c{tutaj ta zmienna}_res itp. Czy można tak wstawić w jedną zmienną drugą, żeby to normalnie działało? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Zrób nieco optymalizacji (IMG:style_emoticons/default/smile.gif) Po co przechowywać wynik dziesięciu zapytań, skoro możesz jednym pobrać wszystko i potem tylko jedna pętla (IMG:style_emoticons/default/winksmiley.jpg)
To czy użyjesz tylko ciągu, tablicy, czy wycąigniesz jedynie do tablicy id i nazwę kategorii a potem podczas robienia całego select uzupełnisz w pętli while brakujące pola to Twój wybór. Jak widzisz możliwości jest minimum 3 (IMG:style_emoticons/default/winksmiley.jpg) a to jakie id pchniesz to Twoja sprawa i jak. Możesz użyć na sztywno w ciągu jak ja, ale rónie dobrze wyciągnąć podzapytaniem w samym SQL. Znów możliwości jest kilka (IMG:style_emoticons/default/smile.gif) EDIT: Bym zapomniał... Jeśli chcesz wyrzucić powtarzające się ( nie znam truktury bazy więc może się coś powtarzać ) to użyj DISTINCT we właściwym miejscu. Ten post edytował thek 11.11.2009, 14:30:20 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.10.2025 - 17:16 |