![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 5.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
Hej... właśnie poznaję zagadnienie klas i programowania obiektowego.
Nie wszystko jest jeszcze dla mnie jasne, ale oto moje pierwsze dzieło... klasa generująca title i keywords w meta tagach. Skrytykujcie błędy i dajcie wskazówki, rady jak ją usprawnić. Kod class MetaInfo{ function title(){ $id = $_GET['id']; $wynik = mysql_query("SELECT nazwa, miasto, typ, woj FROM kwatery WHERE kwatery.id='$id' limit 1;")or die (mysql_error()); list ($nazwa,$miasto,$typ,$woj) = mysql_fetch_row($wynik); return $nazwa.', '.$typ.', noclegi '.$miasto.', woj. '.$woj; } function keywords(){ $id = $_GET['id']; $wynik = mysql_query("SELECT nazwa, miasto, typ, woj FROM kwatery WHERE kwatery.id='$id' limit 1;")or die (mysql_error()); list ($nazwa,$miasto,$typ,$woj) = mysql_fetch_row($wynik); return 'dobre kwatery, dobrekwatery, noclegi, '.$typ.', noclegi '.$miasto.', '.$miasto.', '.$woj; } } Nie wiem jak pozbyć się powtórzeń w obu funkcjach... można to zrobić przed funkcjami, tak by zmienne miały charakter globalny? Z góry, wielkie dzięki, pozdrawiam. Ten post edytował rapkar 5.08.2008, 21:29:59 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 37 Pomógł: 1 Dołączył: 2.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
Nie rozumiesz ideii obiektowości. Pomijam fakt stylu pisania gdzie troche dziwnie się to czyta. Do swojego obiektu wstawiasz zapytanie " na sztywno" idea obiektowosci jest tworzenie API które będzie uniwersalne.
edit: Wiem, że na początku trudno jest zrozumieć obiektowość i pomimo licznych kursów czasami cieżko załapać o co chodzi osobie która pisze strukturalnie. Wyobraź sobie swoja klase która ma generować keyword-y. Prawdziwy obiekt powinien działać tak, że przekazujesz do niego dane czy to z bazy czy pliku a on wykonuje dane zadanie czyli tworzy jakies losowe teksty. W sumie tworzenie keyword-ow to za proste nawet dla klasy ale jak już bardzo chcesz takową napisać to w takiej klasie nie powinno być zapytania do bazy dlaczego ? Ano dlatego ze to klasa która ma generowac keywordy to co zatem robi zapytanie do bazy ? Wyobraz sobie ze chcesz użyc tej klasy w innym projekcie i co wtedy ? Przerabiasz klasa od nowa bo masz jakies zapytanie do bazy. Mija się to z celem dlatego ze wlasnie idea obiektowosci jest elastycznosc. Piszesz klase raz a pozniej wykorzystujesz ja w innych projektach bo dane do klasy przekazujesz przez API. Ten post edytował cckoles 5.08.2008, 21:39:54 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 23:56 |