标题(“位置:$ value”);不会重定向...为什么?

时间:2011-01-14 00:39:23

标签: php redirect header

登录后我想将用户发回$value, 用我的代码生成$value,打印并且看起来不错。
这是一个完整的网址:http://example.com/page.php?id=6

但忽略了header("Location: ".$value);声明:

if($iniciando->iniciar()) {
    if (isset($_SESSION['redirect'])) {
        $he ="http://funcook.com" . $_SESSION['redirect'];
        mostrar_notificacion($he);
        header("Status: 301");
        header("Location: " . $he, true, 301);
    } else {
        imprimir_sesion_iniciada();
    }
} else {
    imprimir_formulario_sesion();
}

2 个答案:

答案 0 :(得分:2)

在将任何其他输出发送到浏览器之前,必须调用

header("Location x");。这包括<?php?>标记之外的所有空格。

另外,请确保您没有任何print / echo语句用于调试目的。

答案 1 :(得分:0)

我怀疑你在使用Chrome?

您应该为所有浏览器使用更好的重定向代码来跟随它:

    header("Status: 301");
    header("Location: ".$URL, true, 301);