SESSION数据不会传递

我已经有了一个相当突出的问题,因为我现在正在研究一个项目。 我在一个月前和今天早上设置了我的代码的会话部分,当我登录到我的代码的测试帐户时,似乎我的$ _SESSION数据不再通过页面之间传递。

登录脚本工作正常,并成功触发标题。 但是当我到达portalroom.php时,print_r正在生成“Array()”。 portalroom.php以session_start()开头。 我也确认register_globals已关闭在我的php.ini中。 在这一点上,我完全失去了。

session_start();
$dbcon = mysqli_connect(DB_SERVER,DB_USERNAME,DB_PASSWORD,DB_DATABASE);
if(isset($_SESSION['user'])!="" ) {
    header("Location: portalroom.php");
    exit;
}   
$error = false;
if($_SERVER["REQUEST_METHOD"] == "POST") {
  $myusername = mysqli_real_escape_string($dbcon,$_POST['username']);
  $mypassword = mysqli_real_escape_string($dbcon,$_POST['password']); 
  if(!$dbcon) {
    die("Connection failed : " . mysqli_error());
    $error = true;
    }
  if(!$error)   {
    $res=mysqli_query($dbcon, "SELECT userID,LoginName,Password FROM playerDB WHERE LoginName='$myusername'");
    if(!$res) {
        echo("Error:" . mysqli_error($dbcon));
        exit();
    }
    $row=mysqli_fetch_array($res);
    $count=mysqli_num_rows($res);

    if( $count == 1 && password_verify($mypassword, $row['Password'])) {
        $_SESSION['user'] = $row['userID'];
        $_SESSION['last_activity'] = time();
        $_SESSION['created'] = time();
        header("Location: portalroom.php");
        exit;
    }   else { echo("Incorrect Username/Password"); }}}

(编辑)这是portalroom.php的代码顶部:

session_start();
include('session.php');
include('functions.php');   
include('sidebar.php'); 
include('scripts.php');
include('locationroom.php');

并且因为显示$ _SESSION数据的实际代码正在丢失,所以session.php中包含了开头的内容:

// Are we logged in?  If no - Kick 'em out
print_r($_SESSION);
if(!isset($_SESSION['user'])) { echo "we are here";
    // header("location:login.php");  
}

代码的相关输出是:Array()我们在这里

链接地址: http://www.djcxy.com/p/60245.html

上一篇: SESSION data is not passing along

下一篇: SESSION empty after function execution