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