Php 您的SQL语法有错误;

Php 您的SQL语法有错误;,php,mysql,sql,syntax-error,Php,Mysql,Sql,Syntax Error,我正在尝试更新胶片表,但出现以下错误: 您的SQL语法有错误;查看与MySQL服务器版本对应的手册,以了解在第1行中使用接近值(name,release,runtime,rating,description,price)的正确语法(“世界大战”) 这是我的密码: $sql = mysql_query("UPDATE film SET (`name`,`release`,`runtime`,`rating`, `description`,`price`) VALUES ('$name','

我正在尝试更新胶片表,但出现以下错误:

您的SQL语法有错误;查看与MySQL服务器版本对应的手册,以了解在第1行中使用接近值(
name
release
runtime
rating
description
price
)的正确语法(“世界大战”)

这是我的密码:

$sql = mysql_query("UPDATE  film  SET (`name`,`release`,`runtime`,`rating`,   `description`,`price`) VALUES ('$name','$release','$runtime','$rating','$des','$price' WHERE film_id ='$fid')") or die (mysql_error());

$fid = $row['film_id'];
$name = mysql_real_escape_string($_POST['name']);
$release = ($_POST['release']);
$runtime = ($_POST['runtime']);
$release = $row['release'];
$rating = $row['rating'];
$runtime = $row['runtime'];
$des = $row['description'];
$price = $row['price'];
您混淆了语法:

一些补充说明:

  • 仅供参考,。它们不再被维护。请参阅?改为了解,并使用,或-将帮助您决定使用哪个。如果您选择PDO

  • 我看不出你在哪里清理你的数据,这样你就可以公开

  • 使用
    mysql\u real\u escape\u string()
    此处:
    $name=mysql\u real\u escape\u string($\u POST['name']);
    没有任何作用,除非您运行的是我们在此之后没有看到的另一个查询

  • 这一行的括号是不必要的:
    $release=($\u POST['release']);


  • 您的更新语法不正确,请尝试此语法

    $sql = mysql_query("UPDATE film SET name='$name',release='$release,runtime='$runtime',rating='$rating',description='$description' where film_id = '$id'");
    

    OP的代码可以是任何一种方式;我没有碰这个的原因,非先生;-)起初我犹豫了一下,但后来我对他们感觉很好,我想做一个更新。看起来他们做了一次插入,并试图通过更改关键字来进行更新,但没有意识到语法与此大不相同。
    $sql = mysql_query("UPDATE film SET name='$name',release='$release,runtime='$runtime',rating='$rating',description='$description' where film_id = '$id'");