![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 23.05.2005 Skąd: Knurów Ostrzeżenie: (0%) ![]() ![]() |
Witam
Taki kod: plik1
plik2:
Po zalogowaniu sie w plik1 osoba jest zapamietywana, niewazne ile razy odswieze strone, itd. Po przejsciu na plik2, osoba jest widoczna tylko za pierwszym razem, po odswiezeniu strony lub po powrocie na plik1 osoba jest juz pusta... Nie ma, zostal tylko slad w $_sessions - [osoba] => (tu jest nic ![]() Ktos pomoze dojsc do tego w czym problem? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) ![]() ![]() |
Widocznie gdzieś w kodzie plik2.php masz kawałek, który tę zmienną sesji czyści i z jakiegoś powodu jest on wykonywany.
-------------------- Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 23.05.2005 Skąd: Knurów Ostrzeżenie: (0%) ![]() ![]() |
No wlasnie nie, tez tego szukalem bo wydawalo mnie sie ze to moze byc powod... W jedynym miejscu gdzie to sie dzieje dawalem do debugu echo 'sesja usuwana' i nigdy tam nie wlazil nieproszony... Dla jasnosci dam caly listing, pomijajac kawalki z html (tam zadne zmienne nie sa zmieniane, itp). Rozni sie nieco od wczesniejszego, bo zaczalem implementowac dalsza funkcjonalnosc, jednakze problem z tematu jak najbardziej aktualny, czyli tam gdzie sprawdza osobe, po odswiezeniu strony osoba jest pusta...
plik2
PS. Na tym samym serwerze stoi phpbb i tam nie zauwazylem jakichs problemow z sesjami... |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
sesje same nie znikają daj w kodzie co jakiś kawałek print_r($_SESSION) i zlokalizuj miejsce w którym tracisz zmienne w sesji
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 23.05.2005 Skąd: Knurów Ostrzeżenie: (0%) ![]() ![]() |
zaraz sprawdze dokladnie jak piszesz, wczesniej walnalem tego print_r na poczatku kazdego pliku, wnisoki takie:
plik1 - po odswiezeniu osoba zostaje plik 2 - po wejsciu mamy tylko osobe (print_r na poczatku wiec jeszcze nie stworzony), po odswiezeniu osobe widac jako pusta [osoba] => ale mamy uczestnika powrot do plik1 - nie ma osoby ale uczestnika pamieta za kazdym odwiezeniem |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Na początek upewnij się, że masz włączone raportowanie wszystkich błędów (display_errors => on, error_reporting => -1).
Teraz będziesz musiał spróbować napisać maksymalnie krótki i prosty kod, pozbawiony zależności do innych części projektu (albo dołączysz te zależności) w którym występuje ten błąd. Tak byśmy mogli go skopiować i uruchomić - chodzi o to by był dostępny cały kod. |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 23.05.2005 Skąd: Knurów Ostrzeżenie: (0%) ![]() ![]() |
PS. Uczestnik dziedziczy po osobie, wydaje mnie sie absurdalne, by to powodowaly problemy, ale moze jednak?
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 548 Pomógł: 105 Dołączył: 4.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
u mnie też znikały bo przed
session_start() miałem jakiś kod spróbuj dać session start na początku każdego pliku tak żeby był pierwszą linijką tego pliku może pomoże pozdrawiam |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 23.05.2005 Skąd: Knurów Ostrzeżenie: (0%) ![]() ![]() |
u mnie też znikały bo przed session_start() miałem jakiś kod spróbuj dać session start na początku każdego pliku tak żeby był pierwszą linijką tego pliku może pomoże pozdrawiam Niestety, to nie pomaga... Nawet wiecej psuje, bo pojawia sie przy kazdym obiekcie w sesji incomplete class... |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 183 Pomógł: 24 Dołączył: 4.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
czasem zapominane: definicja klasy, obiektu, który znajduje się w zmiennej $_SESSION musi być zadeklarowana przed session_start(). autoload pomoże.
może też błędnie implementowałeś __sleep() i __wakeup() Ten post edytował kalmaceta 22.01.2011, 00:12:08 -------------------- kAlmAcetA
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 04:51 |