ヘッダー関数内の 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; }
}
?>
誰かが私が間違っていることを教えてくれたら、私を正しい方向に押してくれます!
ノート:
SQL インジェクションのために mysql_* を使用すべきではないことはわかっていますが、このコードはオンラインになることはなく、ローカルでのみ使用されるため、これは問題ではありません