0

以下のコードでは、データベースを更新できますが、ヘッダーの場所で指定されたページにリダイレクトされず、同じページ自体が更新されて表示されます。データベースの更新とリダイレクトでうまく機能していた他のコードをコピーしました

  <?php

if (isset($_POST['submit']))
 { 
 // get form data, making sure it is valid
 $firstname = mysql_real_escape_string(htmlspecialchars($_POST['firstname']));

 $link = mysql_connect('www.xxxxxxx.co.uk', 'xxxxxx', 'axxxxxd');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}

mysql_select_db("web39-sdasdasd", $link);
mysql_query("INSERT learning_outcome SET topic='$firstname'")
 or die(mysql_error()); 

 header('Location: http://www.xxxxxx.co.uk/NottTest/viewlearnpc.php?succmsg=UPDATE SUCCESSFULL'); 
 }

 else

 echo "";

 ?>
4

3 に答える 3

3

スペース/インデントを削除:

  <?php

コマンドの前に何もエコーまたは出力しないことを確認する必要がありますheader

于 2012-06-19T20:53:00.003 に答える
0

PHP スクリプト内の空白行とインデント スペースをすべて削除します。

于 2013-08-14T04:54:21.970 に答える
0

クエリはINSERT INTO learning_outcome(col1, col2) VALUES ("value1", "value2")INSERT ではありません learning_outcome

$result = mysql_query("INSERT INTO learning_outcome SET topic='$firstname'") 

まず、クエリが正常に実行されたかどうかを確認してからリダイレクトします。

if($result)
{
   header('Location: http://www.xxxxxx.co.uk/NottTest/viewlearnpc.php?succmsg=UPDATE SUCCESSFULL');
}
else
{
   die("query isn't executed, error");
}

set col1 = valueアップデートのみでご利用いただけます。

于 2012-06-19T20:56:07.970 に答える