重定向后,PHP会话变量为空

时间:2017-07-04 13:03:46

标签: session redirect shared-hosting

我在我的本地机器上写了一个应用程序,一切都很完美,直到我在免费托管服务器上传了应用程序。问题是在这段代码中设置的所有会话变量:

      SELECT m_product.name
            ,COUNT(m_product.name)    
        FROM m_product
    GROUP BY m_product.name
UNION ALL 
      SELECT c_bpartner.name
            ,COUNT(c_bpartner.name)    
        FROM c_bpartner
    GROUP BY c_bpartner.name

在我将其打印出来后,在此重定向(所有这些代码都是登录系统的一部分)后变空:

   if($user) {
        // regenerate session for safety purposes
        //session_regenerate_id(true);
        //set some session vars and redirect
        $_SESSION['user_id'] = $user->id;
        $_SESSION['first_name'] = $user->first_name;
        $_SESSION['admin']      = $user->admin;
        return true;
    }

我只获得 Authentifiacation::login($user, $remember_me); Flash::addMessage('Successfully logged in', Flash::SUCCESS); // redirect user to the page which he originally requested static::redirect('/admin/home/index'); exit(); 的{​​{1}}。

然而,当我在设置后完全打印它们时它们都存在。 我使用简单的MVC框架,一切都在localhost上运行良好。我已经尝试过: 1)尽管它位于前端控制器index.php中,但在脚本的不同部分添加Array() 2)设置变量后print_r($_SESSION) 3)session_start()之后session_regenerate_id() 4)将exit()设置为关闭的代码 5)删除.htaccess

还有其他可能的原因吗?

0 个答案:

没有答案