Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] problem z sesjami
szef
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 19.02.2007
Skąd: Rumia

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


Witam.
Robię stronę na serwerze klienta i zauważyłem tam dziwne zachowanie php. Gdy używam session_start() tworzy się pusty plik z sesją. Gdy używam:
  1. <?php
  2. $_SESSION['cos'] = 'aaa';
  3. ?>

tworzy się kolejny plik z sesją. Jednak gdy próbuję wyświetlić sesję nic się nie wyśwetla tak jakby był używany pusty plik utworzony podczas wywołania session_start() zamiast tego nowo utworzonego.
Gdy wyłączę session_regenerate_id() wszytsko działa.

jakieś sugestie?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
nitek
post
Post #2





Grupa: Zarejestrowani
Postów: 209
Pomógł: 37
Dołączył: 27.02.2008
Skąd: Kwidzyn

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


odp przynosi manual:


4.3.3 Od tej wersji PHP, jeżeli ciasteczka sesji są aktywne, wywołanie session_regenerate_id() tworzy nowy identyfikator sesji z nowym ciasteczkiem.


wydaje mi się, że stąd to nowe - puste ciacho (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
szef
post
Post #3





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 19.02.2007
Skąd: Rumia

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


Tylko to nie rozwiązuje mojego problemu. Skoro tworzy się nowe ciacho to powinno z niego korzystać a korzysta ze starego, ale dzięki za wkład (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
nitek
post
Post #4





Grupa: Zarejestrowani
Postów: 209
Pomógł: 37
Dołączył: 27.02.2008
Skąd: Kwidzyn

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


no fakt - kolejny raz latam po forum późną pora (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) spróbuj może w ten sposób:
Kod
  session_regenerate_id(true);

Ten zapis według opisu niszczy starą sesje, czyli teoretycznie, automatycznie powinna zostać wykorzystana nowa, która i tak będzie zawierać wszyskie zmienne ze starej..
Go to the top of the page
+Quote Post
szef
post
Post #5





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 19.02.2007
Skąd: Rumia

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


Niestety nic nie pomaga nawet gdy dam session_regenerate_id(true). Ogólnie pobiegałem po googlach i jest to znany problem w wielu wersjach php jednak nigdzie nie znalazłem konkretnego rozwiązania.
Go to the top of the page
+Quote Post
netmare
post
Post #6





Grupa: Zarejestrowani
Postów: 285
Pomógł: 37
Dołączył: 18.12.2007
Skąd: Łódź

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


może da się to zrobić ręcznie
  1. <?php
  2. $session=$_SESSION;
  3. unset($_COOKIE['PHPSESSID']);
  4. $_SESSION=$session;
  5. ?>


tyle że nie wiem czy session_start korzysta z $_COOKIE, czy też może jakąś inną drogą pozyskuje numer z ciastka
Go to the top of the page
+Quote Post

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: 24.08.2025 - 17:46