Już mnie szlag jasny bierze.
Początek index.php
:
session_start();
include 'mysql.php';
include 'User.php';
$user = mysql::loadUser();
if ($user != null) {
$_SESSION['user'] = serialize($user);
$_SESSION['logged'] = 1;
}
else {
$_SESSION['user'] = null;
$_SESSION['logged'] = 0;
}
I inny plik:
session_start();
include 'User.php';
if ($_SESSION['logged'] == 1) {
echo unserialize($_SESSION['user']);
}
I na linii echo unserialize($_SESSION['user']);
błąd. Okazuje się, że $_SESSION['user']
jest równy... null.
Potrafi ktoś to wyjaśnić i mi jakoś pomóc?
EDYTA:
Jeszcze weselej.
isset($_SESSION['user'])
w obydwóch plikach zwraca 1.
EDYTA 2:
Teraz jest już naprawdę wesoło.
if ($_SESSION['isLogged'] == 1 && isset($_SESSION['user'])) {
echo "used";
$user = unserialize($_SESSION['user']);
}
W oknie przeglądarki wyświetla się "used", a zaraz potem... Warning: unserialize() expects parameter 1 to be string, object given
.