Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: klasa Collection
Forum PHP.pl > Forum > PHP
basu
Mam problem z klasa Collection z książki PHP5 zaawansowane programowanie.
Kod zamiescilem w zalaczniku http://www.artfly.ovh.org/collection.zip
Błąd który otrzymuje brzmi:

exception 'Exception' with message 'Funkcja zwrotna Student::_loadCourses nieprawidłowa!' in C:\wamp\www\PHP5_Zaawansowane_programowanie\moje\rozdzial_5_klasa_collection\class.Collection.php:96 Stack trace: #0 C:\wamp\www\PHP5_Zaawansowane_programowanie\moje\rozdzial_5_klasa_collection\class.Student.php(17): Collection->setLoadCallback('_loadCourses', Object(Student)) #1 C:\wamp\www\PHP5_Zaawansowane_programowanie\moje\rozdzial_5_klasa_collection\class.StudentFactory.php(32): Student->__construct('1', '1') #2 C:\wamp\www\PHP5_Zaawansowane_programowanie\moje\rozdzial_5_klasa_collection\test.php(10): StudentFactory::getStudent(1) #3 {main}

NiIe wiem jak dalej ruszyc, ksiazka jest dosc ciezka w odbiorze..
matipl
Sądzę, że masz błąd w klasie Student, jest:
  1. <?php
  2. private function _loadCourses(Collection $col) {
  3. $courses = StudentFactory::getCoursesForStudent($this->_id, $col);
  4. }
  5. ?>

a powinno byc:
  1. <?php
  2. public function _loadCourses(Collection $col) {
  3. $this->courses = StudentFactory::getCoursesForStudent($this->_id, $col);
  4. }
  5. ?>


Zmiana private na public, poniewaz w setLoadCallback() jest sprawdzane czy podana metoda jest dostepna, a $this->courses, zamiast $courses ponieważ inaczej nie ma to sensu smile.gif
kszychu
Nie umieszczaj tego samego problemu w wielu wątkach, to niezgodne z regulaminem. I używaj bbcode.
Zamykam, proszę kontynuować w poprzednim wątku.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.