![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 0 Dołączył: 29.06.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
witam,
na stronie moje sesje przyjmuja taka wartosc: Kod Array ( [language] => language Object ( [lang_name] => __PHP_Incomplete_Class Object ( [__PHP_Incomplete_Class_Name] => language [lang_name] => russian ) ) ) znalazlem w necie info, ze __PHP_Incomplete_Class Object jest jakims bledem w php :/ czy ktos z was sie spotkal z takim bledem i wie jak temu zapobiec? klasa language jest prosta:
tworzenie: $language = new language(); // aha, na localhoscie dziala ok pzdr. wojto Ten post edytował wojto 7.09.2005, 14:58:54 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 742 Pomógł: 0 Dołączył: 14.12.2003 Skąd: Gdańsk, Trójmiasto Ostrzeżenie: (0%) ![]() ![]() |
czy na localu i na serwerze wersje php sa te same?
btw 1. class language { function language() { return true; } co to jest? (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Konstruktor nie moze zwracac nic, bo jest wywolywany przy tworzeniu obiektu i do zmiennej przisywany jest Resource do obiektu a nie wynik returna. 2. nie uzywaj global, bardzo zla praktyka programistyczna, w OOP w ogole nie do przyjecia:) |
|
|
![]()
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 1 224 Pomógł: 40 Dołączył: 6.07.2004 Skąd: Wuppertal Ostrzeżenie: (0%) ![]() ![]() |
na moje oko, zeby w sesji bylo git, musisz zaincludowac strukture klasy na początku, zeby php wiedzial jak ma obiekt wygladac... bo jak wiesz... obiekt to nei tylko jego wartosci, ale tez metody ^^
|
|
|
![]()
Post
#4
|
|
Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Definicja obiektow przechowywanych w sesji musi byc znana przed session_start(), zeby zapobiec temu bledowi.
Mialem dokladnei to samo chyba przedwczoraj, ale nie chcialem niepotrzebnie ladowac definicji klasy, ktora byla uzywana tylko w kilku miejscach, wiec ostatecznie zapisalem do sesji obiekt w postaci zserializowanej. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 0 Dołączył: 29.06.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
na serwerze jest 4.3.10, u mnie jest 5.0.0
usunalem te globale i dalem singletony, ale teraz mam taki problem, ze nie widzi mi obiektu $db w klasie $session, a kolejnosc wywolywania mam nastepujaca:
o singletonach dopiero co przeczytalem dokladnie przed 5 minutami getinstance w kazdej klasie wyglada analogicznie:
no i wykonujac skrypt dostaje blad: Kod php Notice: Undefined variable: db Fatal error: Call to a member function sql_query() on a non-object in c:\usr\apache\httpd\html\poflirtuj\includes\session.class.php on line 98 ta linia, to: Kod function gc($a) { //linia 98: return($db -> sql_query("DELETE FROM ".PREFIX."sessions WHERE last_active<UNIX_TIMESTAMP()-1800")); } OOP tylko liznalem w javie, wiec problem moze jest w kolejnosci wywolywania klas, czy da sie zrobic tak, zeby dzialalo wszystko ok, jesli klasy sa powiazane w sposob: mam klasy Auth, Db, Error, Io, Language, Session Auth korzysta z Db i Io Io korzysta z Db Language korzysta z Auth Session korzysta z DB, Auth niby w takiej kolejnosci jak wywoluje, to kazda klasa powinna miec to co potrzebuje :/ |
|
|
![]()
Post
#6
|
|
Grupa: Przyjaciele php.pl Postów: 742 Pomógł: 0 Dołączył: 14.12.2003 Skąd: Gdańsk, Trójmiasto Ostrzeżenie: (0%) ![]() ![]() |
a zdefiniowales zmienna $db w metodzie gc ? to jest tak samo jak w funkcjach. Zrob wpierw
i używaj znacznika php (IMG:http://forum.php.pl/uwaga.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 08:36 |