Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Programowanie obiektowe
Woytek950
post 8.05.2010, 22:03:49
Post #1





Grupa: Zarejestrowani
Postów: 130
Pomógł: 2
Dołączył: 6.06.2008
Skąd: jesteś ?

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


Witam. Zaczynam uczyć sie programować obiektowo w PHP i w związku z tym moja prośba. Czy ktoś mógł by mi napisać prosty skrypt ilustrujący użyteczność PO w php&mysql, poprzez jakieś zapytanie czy coś.
Go to the top of the page
+Quote Post
blooregard
post 8.05.2010, 22:33:35
Post #2


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




  1. class User {
  2. private $id = 0;
  3.  
  4. public function __construct($id) {
  5. $this->id = (integer)$id;
  6. }
  7.  
  8. public function getUserData() {
  9. $query = "SELECT * FROM users WHERE user_id = '".$this->id."'";
  10. $result = mysql_fetch_assoc(mysql_query($query));
  11. return $result;
  12. }
  13. }//
  14.  
  15. $user = new User(1);
  16. $userData = $user->getUserData();
Powód edycji: [blooregard]: poprawka w kodzie :)


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
Woytek950
post 9.05.2010, 13:56:03
Post #3





Grupa: Zarejestrowani
Postów: 130
Pomógł: 2
Dołączył: 6.06.2008
Skąd: jesteś ?

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


Metoda construct definiuje nam id? czyli obsłużymy ją tak:
  1. $user = new User();
  2. $user->construct(1);
  3. $userData = $user->getUserData();
  4.  
  5. echo $userData;


Chyba robię postępy... Piszę własnego cms i dlatego też chciałem się nauczyć PO. Stanąłem w miejscy systemu (wyświetlania) newsów, nie wiem jak się zabrać za to, i jak napisać klasę.
Go to the top of the page
+Quote Post
blooregard
post 9.05.2010, 20:54:10
Post #4


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
Metoda construct definiuje nam id? czyli obsłużymy ją tak:

__construct to metoda wywoływana automatycznie w momencie utworzenia obiektu (tzw. konstruktor). Możesz w niej m.in. zainicjalizować składowe klasy czy wykonać inne czynności, które powinny zostać wykonane w momencie powołania obiektu "do życia" Akurat w tym przykładzie użyłem tej możliwości do zainicjalizowania składowej klasy $id.
Więc Twój zapis jest pozbawiony sensu i w momencie wykonania takiego skryptu powinieneś otrzymać komunikat błędu o odwołaniu się do nieistniejacej metody w klasie User.

http://pl2.php.net/manual/en/language.oop5.decon.php

BTW, w moim poprzednim poście był błąd, który poprawiłem smile.gif



--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.07.2025 - 20:56