此代码应该更新给定书籍的数据库记录。有一种形式可以将这个函数传递给所需的数据,并且该形式没有错误,但我担心我已经错误地将我的查询格式化为UPDATE MySQL。有人可以为我验证这个吗?我似乎总是很难记住MySQL查询字符串的格式。如果有人有关于如何快速记住它的提示而不查看非常感谢的文档。
function saveBook ($ID, $Title, $Author, $Type, $Section, $AvailableMaterial)
{
$query = "UPDATE Publications SET Title = '$Title', Author = '$Author', Section = '$Section', Type = '$Type', AvailableMaterial = '$AvailableMaterial' WHERE ID = '$ID'";
$result = mysql_query($query);
if (!$result)
{
die('Query Failed: ' . mysql_error());
}
return HEADER ("LOCATION: /lightBox/close.php");
}
答案 0 :(得分:1)
这段代码不正确。
$query = "UPDATE Publications SET `Title` = '".$Title."', `Author` = '".$Author."', `Section` = '".$Section."', `Type` = '".$Type."', `AvailableMaterial` = '".$AvailableMaterial."' WHERE `ID` = '".(int)$ID."'";
更好。 type是mysql中的保留键,所以你需要backtics。
我假设您在将所有数据发送到“savebook”之前将其转义为