这段代码看起来正确吗?

时间:2012-08-29 17:45:05

标签: php mysql

此代码应该更新给定书籍的数据库记录。有一种形式可以将这个函数传递给所需的数据,并且该形式没有错误,但我担心我已经错误地将我的查询格式化为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");
}

1 个答案:

答案 0 :(得分:1)

这段代码不正确。

 $query = "UPDATE Publications SET `Title` = '".$Title."', `Author` = '".$Author."', `Section` = '".$Section."', `Type` = '".$Type."', `AvailableMaterial` = '".$AvailableMaterial."' WHERE `ID` = '".(int)$ID."'";

更好。 type是mysql中的保留键,所以你需要backtics。

我假设您在将所有数据发送到“savebook”之前将其转义为