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

时间:2013-04-15 09:32:17

标签: php url variables header

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

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

但是会出现以下错误:

  

警告:无法修改标题信息 - 已在第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; }

}
?>

如果有人能够告诉我在做正确的方向上我做错了什么就会很棒!

注意:

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

1 个答案:

答案 0 :(得分:5)

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

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

关于这一点有一个很好的答案,here

相关问题