“警告:ini_set():会话处于活动状态”错误

时间:2015-01-04 05:54:17

标签: php session heroku

我正在使用Heroku和SQL创建一个包含登录用户数据库的页面。我无法从PHP和MYSQL中翻译它。作为过渡的一部分,我不断在我的网站的每个页面上都出现此错误,但我不能为我的生活弄清楚为什么或如何摆脱它:

警告:ini_set():会话处于活动状态。您目前无法在第56行的/app/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/NativeFileSessionHandler.php中更改会话模块的ini设置

我试过读这个,但没有到达任何地方: ErrorException: Warning: ini_set(): A session is active. You cannot change the session module's ini settings at this time in /../../

以下是我页面的登录页面部分:

$app->post('/login/', function() use($app)  {

    // configuration
    //require("../includes/config.php");
$usernameExists = false;
$emailExists = false ; 

$username = $app['request']->get('username');
$password = $app['request']->get('password');

$st = $app['pdo']->prepare("SELECT * FROM users where username = ?") ;
$st -> execute(array($username));
$userinfo = array() ; 
 while ($row = $st->fetch(PDO::FETCH_ASSOC)) {
    $app['monolog']->addDebug('Row ' . $row['username']);
    $userinfo[] = $row;
  }   

if (count($userinfo) == 1  )
{
     $row = $userinfo[0];
     $salt = openssl_random_pseudo_bytes(64) ; 
     if (crypt($password, $salt) == crypt($row['password'], $salt))
     {
        //set session id
        session_start();
        $app['session']->set('user', array('username' => $username));
           return $app->render('myshows.php'/*, array(
    'names' => $usernames ) */
      );
     }
     else 
     {
        return $app['twig']->render('login_form.twig', array('incorrectlogin' => 1 ));
     }
}

if ($userinfo == null )
{
return $app['twig']->render('login_form.twig' , array(
    'incorrectlogin' => 1 ));
}
}) ; 

这是我目前的php.ini文件:

; php options
date.timezone = UTC
 session.auto_start = 0
; hhvm specific 
hhvm.log.level = Warning
hhvm.log.always_log_unhandled_exceptions = true
hhvm.log.runtime_error_reporting_level = 8191
hhvm.mysql.typed_results = false

2 个答案:

答案 0 :(得分:2)

我想出了答案!我不小心包含了session_start();在我的配置文件中。一切都好了。

答案 1 :(得分:0)

您在cofig文件

中不需要这一行

session_start(); //需要调用PHP的会话对象来访问它 当你加载会话库时,它的构造函数会为你做这些。