![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 39 Pomógł: 0 Dołączył: 1.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Mam taki kod:
Coś takiego działa jak należy - czyli wypisuje treści postów z forum po kolei zgodnie z szablonem. Ale jeśli dodam w pętli while:
to wyświetla się tylko jeden post - pierwszy z danego zapytania. Reszty nie ma :| |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 176 Pomógł: 0 Dołączył: 30.11.2004 Ostrzeżenie: (0%) ![]() ![]() |
cały czas deklarujesz ten sam obiekt?
zrób coś takiego..naprzykład twórz tablice obiektów, wg mnie najprostsze rozwiązanie..
Poza tym nie deklaruj zmiennych o nazwach zbliżonych do zmiennych globalnych jak $post czy $get..tak dla ładnego kodu.. Ten post edytował marast78 5.11.2006, 17:30:17 -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 39 Pomógł: 0 Dołączył: 1.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Rozwiązanie, które proponujesz już sprawdzałem.. i nie działa. Połowicznie działa coś podobnego: deklarujemy tablicę obiektów, tylko licznik zwiększamy poza deklaracją tablicy
Ale niestety wyświetla się nadal tylko pierwszy post (pola są wypełniane odpowiednio). Nie można w php usuwać obiektów? EDIT: Ok, po bojach z php domyśliłem się o co chodzi. Zmienna połączenia jest globalna w funkcjach klasu user, a wykonuję tam zaytania więc zmieniam pole wyniku zapytania w klasie bazy. Powstaje więc pytanie: w jaki sposób sobie z tym najefektywniej poradzić? Tworzenie nowego połączenia w klasie chyba odpada bo to nieefektywne. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 176 Pomógł: 0 Dołączył: 30.11.2004 Ostrzeżenie: (0%) ![]() ![]() |
no tak masz rację php ma problem z iteracją w ten sposób zapomniałem o tym
![]() ![]() -------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 39 Pomógł: 0 Dołączył: 1.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Hm, nie wiem czy dobrze rozumiem. Singleton to klasa, za pomocą której można wytworzyć tylko jeden obiekt z tego co się orientuję. W jaki sposób miałoby to pomóc w problemie? Być może jakoś za mało to opisałem, wygląda to tak, że mam
I metoda setData też wykorzystuje bazę w związku z czym "zamazywane" jest zapytanie w while, więc pętla nie robi już tego, co powinna. EDIT: Ok, po głębszym... zastanowieniu ![]() ![]() EDIT2: Ok, po prostu query($q) powinna zwracać zapytanie. Potem przypisywanie $a = $db -> query("zapytanie"); To było takie proste ![]() Ten post edytował misieq 6.11.2006, 15:04:39 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 09:59 |