Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V  < 1 2  
Reply to this topicStart new topic
> mały problem z dziedziczeniem
Heweliusz
post 25.07.2008, 11:36:46
Post #21





Grupa: Zarejestrowani
Postów: 46
Pomógł: 8
Dołączył: 19.03.2007
Skąd: z nad Jarugi

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


Cytat
Co do pytania które zostało podpięte do tematu to polecam jeszcze raz przeczytać sobie co to jest dziedziczenie,
bo widzę tutaj kompletny brak zrozumienia tematu...

Może i racja, obiektami zająłem się dopiero niedawno.
W takim razie postaram sie poradzić sobie sam z problemem winksmiley.jpg


--------------------
Aktualny projekt: Nauka OOP :)
Go to the top of the page
+Quote Post
manro
post 25.07.2008, 11:44:04
Post #22





Grupa: Zarejestrowani
Postów: 9
Pomógł: 3
Dołączył: 25.10.2006

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


Mała podpowiedź

Klasa dziedzicząca dziedziczy publiczne i chronione właściwości i metody nie dziedziczy natomiast danych
które należą do konkretnego obiektu danej klasy...


--------------------
If you don't have time to do it right, where are you going to find the time to do it over?
http://www.nowicki.cjb.net
Go to the top of the page
+Quote Post
Heweliusz
post 25.07.2008, 20:24:51
Post #23





Grupa: Zarejestrowani
Postów: 46
Pomógł: 8
Dołączył: 19.03.2007
Skąd: z nad Jarugi

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


Mój skrypt wzoruje na phpbb3. Dlaczego więc podobny kod z klasy session.php działa normalnie ?
phpbb3 session.php
  1. <?php
  2. class user extends session
  3. {
  4. var $lang = array();
  5. var $help = array();
  6. var $theme = array();
  7. var $date_format;
  8. var $timezone;
  9. var $dst;
  10.  
  11. var $lang_name;
  12. var $lang_id = false;
  13. var $lang_path;
  14. var $img_lang;
  15. var $img_array = array();
  16.  
  17. /**
  18. * Setup basic user-specific items (style, language, ...)
  19. */
  20. function setup($lang_set = false, $style = false)
  21. {
  22. global $db, $template, $config, $auth, $phpEx, $phpbb_root_path, $cache;
  23.  
  24. if ($this->data['user_id'] != ANONYMOUS)
  25. {
  26. ...
  27. ?>

Używają normalnie tablicy $data, chociaż jest ona tworzona w klasie session. To właśnie mnie męczy :/

Ten post edytował Heweliusz 25.07.2008, 20:25:38


--------------------
Aktualny projekt: Nauka OOP :)
Go to the top of the page
+Quote Post
ARJ
post 25.07.2008, 21:14:20
Post #24





Grupa: Zarejestrowani
Postów: 453
Pomógł: 22
Dołączył: 20.09.2004
Skąd: Kraków - NH -

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


zauważ wywołanie klasy user
common.php
  1. <?php
  2. // Instantiate some basic classes
  3. $user = new user();
  4. $auth = new auth();
  5. $template = new template();
  6. $cache = new cache();
  7. $db = new $sql_db();
  8. ?>


index.php
  1. <?php
  2. // Start session management
  3. $user->session_begin();
  4. $auth->acl($user->data);
  5. $user->setup('viewforum');
  6. ?>


klasa user przecież dziedziczy po klasie session metodę session_begin, a tam są zapisywane dane do zmiennej data. więc klasa user ustawia sobie zmienną data.

phpbb3 nie jest dobrym przykładem do podejścia obiektowego. pisane pod php4, użycie globali oraz takie dziwne techniki jak 2 klasy w jednym pliku.


--------------------
Warsztat: Windows 7 Pro 64bit | Apache 2.2 | PHP 5.2 | MySQL 5.0 | PHPmyadmin 2.6.4
Go to the top of the page
+Quote Post
Sedziwoj
post 26.07.2008, 15:55:48
Post #25





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

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


Cytat(ARJ @ 25.07.2008, 22:14:20 ) *
dziwne techniki jak 2 klasy w jednym pliku.

To jest tylko konwencja, tak jak nazewnicza, więc tego bym nie wymieniał, ale reszta jeży włos na głowie.


--------------------
Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami.
Go to the top of the page
+Quote Post
Heweliusz
post 26.07.2008, 17:38:16
Post #26





Grupa: Zarejestrowani
Postów: 46
Pomógł: 8
Dołączył: 19.03.2007
Skąd: z nad Jarugi

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


Już wiem co było nie tak ^^
Nie zauważyłem, że klasa session jest tylko szablonem, a ja próbowałem ją inicjować osobno.
Jeżeli chodzi o zły przykład, to uważam że na początek wystarczy, potem może zacznę wzorować się na innych skryptach.
Moderatorów proszę o przyznanie punktów pomógł dla userów manro oraz ARJ za pomoc smile.gif


--------------------
Aktualny projekt: Nauka OOP :)
Go to the top of the page
+Quote Post

2 Stron V  < 1 2
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: 2.05.2024 - 13:18