Моя проблема в том, что при вызове статического метода, который содержит элемент управления switch, переменная $ _SESSION не сохраняется. Вот мой код:
class Booking {
static public function bookCourse() {
$smarty = SmartySingleton::getInstance();
session_start();
if (isset($_POST['step'])) {
switch ($_POST['step']) {
//step 1 post
case 1:
//validate
$errors = $validator->validateStep1();
if ($errors == ""){
$_SESSION['step1'] = 'test';
var_dump($_SESSION); //here it prints test
$smarty->display('step2.tpl');
}else{
$smarty->assign('errors', $errors);
$smarty->display('step1.tpl');
}
break;
//step 2 post
case 2:
$errors = $validator->validateStep2();
if ($errors == ""){
var_dump($_SESSION); //here it prints empty array
$_SESSION['step2'] = $_POST;
$smarty->display('step3.tpl');
}else{
$smarty->assign('errors', $errors);
$smarty->display('step2.tpl');
}
break;
....
Кто-нибудь знает в чем может быть проблема? Спасибо!