Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Sesja, a obiekt, czy można obiekt zapisać w sesji ?
arszawin
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 1.07.2008

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


  1. $_SESSION[temp] = new Obiekt();
  2. $_SESSION[temp]->metoda();


Czy taki zapis jest poprawny? Nie wiem dlaczego pojawia się błąd:
Cytat
Fatal error: main() [<a href='function.main'>function.main</a>]: The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition &quot;Kupon&quot; of the object you are trying to operate on was loaded _before_ unserialize() gets called or provide a __autoload() function to load the class definition in


Ten post edytował arszawin 9.08.2010, 23:08:17
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
arszawin
post
Post #2





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 1.07.2008

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


Cytat
To co miałeś na początku było dobre

Masz na myśli ten kod?
  1. <?php
  2. require_once("obiekt.php");
  3.  
  4. if ( !isset ( $_SESSION[ob] ) ) {
  5. $_SESSION[ob] = new Obiekt();
  6. }
  7.  
  8. $_SESSION[ob] -> dodajObiekt(1);
  9. echo $_SESSION[ob] -> liczbaObiektow();
  10. ?>

Napisałeś, że przyczyną problemów jest to, że plik z potrzebną klasą nie został dołączony do skryptu. Chyba jednak nie rozumiem - w trzeciej linijce mamy przecież require_once("obiekt.php");. Problem jest, gdy do sesji przypisany jest już jakiś obiekt klasy Obiekt - wtedy faktycznie jest jakiś problem z odczytem tego obiektu. Pawel_W w pierwszym poście zasugerował użycie serialize(), Ty wspomniałeś o autoloaderze(?) - teraz już nie wiem, co muszę zrobić, by wyeliminować błąd i liczbaObiektów przy każdym odświeżeniu była poprawnie inkrementowana;)
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 27.12.2025 - 12:55