SQL UPDATE查询出错

时间:2009-07-16 14:01:03

标签: php sql mysql

$result = mysql_query("UPDATE categories
        SET cd_title='$docuTitle' , cd_link='$linkTitle'
        WHERE c_name='$catID'");

此更新查询有什么问题?

3 个答案:

答案 0 :(得分:2)

变量中的数据可能有问题 - 但我们无法看到它们包含的内容。

你应该使用参数化查询,它可以处理数据中可能搞乱语句的任何奇怪字符。

请参阅How can I prevent SQL injection in PHP?When are the most recommended times to use mysql_real_escape_string()

答案 1 :(得分:0)

我会将查询更改为此,以避免输入包含撇号时出错:

$result = mysql_query(
    "UPDATE categories SET
         cd_title='" . mysql_real_escape_string($docuTitle) . "',
         cd_link='" . mysql_real_escape_string($linkTitle) . "'
     WHERE
         c_name='" . mysql_real_escape_string($catID) . "'");

答案 2 :(得分:0)

如果您的数据已清理,请从php变量周围删除单引号。