0

我一直在使用 header(); 该脚本是由dreamweaver 登录生成的。为什么它会在某些托管公司上工作,而不是在即时托管公司上工作?

我注意到 header() 在我的所有页面上根本不适用于我的托管公司。为什么我有这个问题?

if (PHP_VERSION >= 5.2) {
    session_regenerate_id(true);
} else {
    session_regenerate_id();
} 

 //declare two session variables and assign them 
$_SESSION['MM_Username'] = $loginUsername; 
$_SESSION['MM_UserGroup'] = $loginStrGroup;  

if (isset($_SESSION['PrevUrl']) && false) { 
    $MM_redirectLoginSuccess = $_SESSION['PrevUrl'];     
} 
header("Location: " . $MM_redirectLoginSuccess ); } 
else { 
    header("Location: ". $MM_redirectLoginFailed ); 
} 
}
4

2 回答 2

1

在下面添加该代码<body>

ob_start();

在下面添加该代码</body>

ob_end_flush();

和voola问题解决了。^_^

于 2013-12-23T07:17:40.313 回答
1

看起来 header() 调用周围的括号有问题:

if (PHP_VERSION >= 5.2) {
    session_regenerate_id(true);
} else {
    session_regenerate_id();
} 

//declare two session variables and assign them 
$_SESSION['MM_Username'] = $loginUsername; 
$_SESSION['MM_UserGroup'] = $loginStrGroup;  

// changes made below <------
if (isset($_SESSION['PrevUrl']) && false) { <--- && false needs fixing
    $MM_redirectLoginSuccess = $_SESSION['PrevUrl'];     
    header("Location: " . $MM_redirectLoginSuccess );
} else { 
    header("Location: " . $MM_redirectLoginFailed ); 
} 

编辑 - && falseif 语句中的也总是会失败,这需要解决。

于 2013-09-30T09:09:25.930 回答