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 回答