PHP重定向不工作,会话已启动
我试图让PHP重定向在登录表单中工作,但是,它不工作。这是验证成功的代码PHP重定向不工作,会话已启动,php,redirect,Php,Redirect,我试图让PHP重定向在登录表单中工作,但是,它不工作。这是验证成功的代码 $success = (isset($_POST['uri'])) ? '' : '/index.php'; if ($rs->num_rows) { $qn = $db->query("SELECT userid FROM sessions"); $svt = array(); $vbs = $rs->fetch_assoc(); while ($row = $qn
$success = (isset($_POST['uri'])) ? '' : '/index.php';
if ($rs->num_rows) {
$qn = $db->query("SELECT userid FROM sessions");
$svt = array();
$vbs = $rs->fetch_assoc();
while ($row = $qn->fetch_assoc()) {
$svt [] = $row ['userid'];
}
if (in_array($vbs ['userid'], $svt)) {
} else {
set_session(array_merge($vbs, array('expires' => time() + (30 * 60))));
$_SESSION['secure3d']['expires'] = time() + (5 * 60);
header("Location: $success"); // this isn't working but the session is set.
}
}
你知道我做错了什么吗?试试$success作为绝对URI,比如在http/1.1中,它必须是绝对URI
另一个常见错误是在header函数之前发送空白。如果包含以
“?>”结尾的include,则可能会发生这种情况。
是否检查是否已到达else语句?或者如果在头之前输出了一些字符串?(警告,例如错误消息)您有一个大括号(至少在粘贴的代码中)是否启用了错误?包括ini\u集('display\u errors',1);错误报告(E_全部)代码>在脚本的顶部,告诉我们它说了什么。@Ismael,是的,它肯定是这样的。我将禁用errorreporting,看看它是否修复了它,但我没有收到标题警告。@konsolenfreddy刚刚修复了:)它取决于您使用的http版本。。。e、 g.如果您使用http/1.1,它必须是绝对的,不再是。HTTPbis表示,这可能是相对的值得注意的是,它应该是一个相对URL,而不是URI。(位置:urn:x:12:AB:FF:00
有点毫无意义。)