Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zapytanie na tabeli a obiektowość
gburus
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 15.06.2010

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


Witam,

Chciałbym napisać dla odświeżenia pamięci i nauczenia się OOP prostą aplikację. Mam następujący problem, w jaki sposób najszybciej i najłatwiej można _obiektowo_ pobierać i wyświetlać cale zestawy wyników zapytania. Np. w postaci tabeli HTML chcialbym przedstawić zawartość tabeli SQL, korzystając z obiektowego programowania. czy metoda typu:

foreach (n;n++) {
utwórz obiekt n-ty
wykonaj kod prezentacji
zniszcz obiekt
}

ma sens? wiem ze mozna to zrobic w postaci arraya, ale czy mozna arraya z obiektami łatwo mieszać?

Dziekuję z góry,
Greg.

Ten post edytował gburus 8.07.2010, 22:38:45
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
gcdreak
post
Post #2





Grupa: Zarejestrowani
Postów: 365
Pomógł: 8
Dołączył: 16.12.2008

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


Cytat(gburus @ 10.07.2010, 22:29:59 ) *
W jaki sposób sie deklaruje taka tablicę obiektów?


Możesz użyć nawet zwykłej tablicy, lecz nie będzie to zbyt eleganckie - znacznie lepsze będzie stworzenie klasy Collection. Z tego co czytam to widzę, że chcesz się czegoś nauczyć więc nie daję Ci gotowej klasy której używam lecz jedynie interface do niej:
  1. interface Collection {
  2.  
  3. public function addItem($obj, $key = null);
  4.  
  5. public function removeItem($key);
  6.  
  7. public function getItem($key);
  8.  
  9. public function lenght();
  10.  
  11. public function keys();
  12.  
  13. public function exists($key);
  14.  
  15. }


Jeśli będziesz chciał jakąś pomoc to pisz.

Pozdrawiam
Go to the top of the page
+Quote Post
gburus
post
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 15.06.2010

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


Cytat(gcdreak @ 10.07.2010, 23:07:40 ) *
Możesz użyć nawet zwykłej tablicy, lecz nie będzie to zbyt eleganckie - znacznie lepsze będzie stworzenie klasy Collection. Z tego co czytam to widzę, że chcesz się czegoś nauczyć więc nie daję Ci gotowej klasy której używam lecz jedynie interface do niej:

(...)

Jeśli będziesz chciał jakąś pomoc to pisz.

Pozdrawiam


Jak rozumiem klasa z takim interfejsem służy do manipulacji rekordami, ale pojedynczymi. W jaki sposob wykorzystać ją, by wykonać następującą czynność: pobrać wszystkie okreslone rekordy z bazy, i wyświetlić je w standardowej formie tabeli. Czy czysto obiektowo da sie to zrobić? Właśnie znalazłem taki kod na php.net:

  1. mysql_connect('localhost','uzytkownik','haslo');
  2. $result = mysql_query('select * from tabela');
  3. while ($row = mysql_fetch_object($result)) {
  4. echo $row->id_uzytkownika;
  5. echo $row->pelna_nazwa;
  6. }


Wydaje mi się, że cały czas chodziło mi właśnie o to, tylko nie potrafiłem nazwać tej funkcji (fetch_object). Teraz pozostaje to oprawić w klasę(y) i chyba jestem w domu.
Jeśli natomiast się mylę, to proszę o poprawienie. Jak rozumiem, powyższy kod powinien iterować po wynikach zapytania, i wyświetlić po kolei wszystkie rekordy?



Go to the top of the page
+Quote Post

Posty w temacie


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: 27.12.2025 - 12:21