JTable - odczyt (dodatek do lekcji 5)

Kategoria: Kurs pisania komponentów dla Joomla 1.5 [MVC] Utworzono: poniedziałek, 29, wrzesień 2008 Opublikowano: poniedziałek, 29, wrzesień 2008 Wojciech Romanek Drukuj E-mail

Dzięki komentarzowi który wpisał emu pod lekcją 5 przypomniałem sobie że nie opisałem w końcu w jaki sposób pobrać dane z bazy przy użyciu JTable. Sprawa jest dość prosta wystarczy że utworzymy instancję do klasy naszego opisu tabeli i wywołamy odpowiednią metodę...

Dane z bazy będziemy oczywiście pobierać za pomocą metody modelu. Więc wszystko co będę pisał poniżej (kod) należy wpisywać w modelu. Pierwsze co musimy zrobić to wskazać, gdzie plik opisu naszej tabeli się znajduje. Robimy to w następujący sposób:

JTable::addIncludePath(JPATH_COMPONENT.DS.'tables');

Gdzie 'tables' to nazwa katalogu w którym umieszczamy pliki opisu tabeli. Następnie tworzymy instancję do naszej tabeli specjalną metodą zawartą w klasie JTable:

$table =& JTable::getInstance('Witaj', 'Table');

Dzięki takiemu zapisowi utworzymy instancję do klasy TableWitaj. Teraz wystarczy jedynie wybrać wiersz który chcemy pobrać - wykorzystamy do tego metodę load($oid) która pobiera jeden argument który jest wartością klucza w przypadku lekcji 5 było to pole id. Metodę wywołujemy w sposób następujący:

$table->load(4);

Gdzie w miejsce 4 wpisujemy dowolną wartość klucza lub wstawiamy zmienną teraz możemy odczytać inne pola używając zapisu:

$table->id;
$table->nazwisko;
$table->imie;
$table->nr_tel;
Odsłony: 8795