在头函数中传递url中的变量

Daa*_*nvn 1 php variables url header

我试图在标头函数中传递URL中的变量.我知道index2.php?ID=<?=$objResult["ID"];?>如果它不在标题函数中,我可以这样做 .但是,如果我尝试在头函数中执行此操作,则整个脚本崩溃.我也试过这个:

header("Refresh: 5;url=index2.php?ID=".$objResult["ID"]."");
Run Code Online (Sandbox Code Playgroud)

但是这会产生以下错误:

警告:无法修改标题信息 - 已在第33行的/var/www/Mail/index.php中发送的标题(在/var/www/Mail/index.php:25处开始输出)

(第33行是标题行)

我的整个代码是这样的:

<?php
if($_POST)
{
    mysql_connect('localhost','root','root');
    mysql_select_db('NAW') or die (mysql_error());

    $Naam              =    $_POST['naam'];
    $Email             =    $_POST['email'];
    $Soort             =    $_POST['soort'];

    $sql = mysql_query("INSERT INTO Klant (Naam, Email, Soort) VALUES ('".$Naam."', '".$Email."', '".$Soort."')") or die (mysql_error());

    if ($sql === false) {

        die (mysql_error());

    }

    else {

        echo ''.$Naam.' is in de database toegevoegd.<br><br>';

    }

    $strSQL         = ("SELECT * FROM Klant WHERE Naam='".$Naam."'");
    $objQuery       = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
    $objResult      = mysql_fetch_array($objQuery);  

    header("Refresh: 5;url=index2.php?ID=".$objResult["ID"]."");


    if($sql){ return 1; } else { return 0; }

}
?>
Run Code Online (Sandbox Code Playgroud)

如果有人能告诉我我做错了什么就把我推向了正确的方向那就太棒了!

注意:

我知道我不应该使用mysql_*因为sql注入,但因为这段代码永远不会在线,只使用本地这不是问题

Raw*_*ode 5

如果您已经将页面输出到页面,则无法发送标题:

echo ''.$Naam.' is in de database toegevoegd.<br><br>';
Run Code Online (Sandbox Code Playgroud)

有完全对此,一个伟大的答案在这里.