Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Sesje] Ustawianie session_id() w obiekcie handlera sesji
kwiateek
post
Post #1





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 13.01.2003
Skąd: 3rd ball of mud behind a big ball of burning gas

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


Mam następujący kod:
[php:1:5010b59c4f]<?php
// Klasa Session Handler w której znajdują sie funkcję wymagane dla session_set_save_handler (dla przykładu dałem _write() bo tej tyczy się problem
class SessionHandler
{
function _write($session_id, $data)
{
$session_id = generateSessionId(); // generowanie id sesji
session_id($session_id); // ustawianie session_id() na wygenerowany ciąg
}
}

// Tworzenie obiektu handlera sesji
$session_handler = new SessionHandler();

// Ustawia funkcje użytkownika do przechowywania sesji
session_set_save_handler (array(&$session_handler, '_open'),
array(&$session_handler, '_close'),
array(&$session_handler, '_read'),
array(&$session_handler, '_write'),
array(&$session_handler, '_destroy'),
array(&$session_handler, '_gc'));

// Start sesji
session_start();
?>[/php:1:5010b59c4f]
Chciałbym w metodzie _write() dokonać nadpisania id sesji. Jednak rezultat tego co znajduje się w metodzie nie jest dostępny poza obiektem session handler'a.
Więc pytanie jest takie: w jaki sposób ustawić session_id z poziomu tamtej metody.
Alteratywną do tego metodą może okazać się wysłanie header'a z przekierowniem na URL/index.php?PHPSESSID=session_id() jednak jest to również nie możliwe i nie wiem z jakiego powodu.
Wyświetla mi komunikat:
Cannot add header information i dalej kazdy wie...
Chociaz wcześniej nie ma wysłanego nic do przeglądarki.

Pozdrawiam.


--------------------
It's Time to Join the PLD Linux Generation!
<? while (!$success) { $try++; } ?>
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 21.08.2025 - 12:31