我一直遇到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 );
}
}
答案 0 :(得分: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 );
}
编辑 - if语句中的&& false
也将始终失败,这需要解决。
答案 1 :(得分:1)
在<body>
ob_start();
在</body>
ob_end_flush();
和voola问题解决了。 ^ _ ^