为什么这个MySQL UPDATE命令不起作用


Why doesn't this MySQL UPDATE command work?

我已经尝试了我所知道的一切。我知道这不是数据库连接的事情,因为我以与插入数据相同的方式运行它,并且它位于同一个函数文件中。

function update($name, email, $id) {
    $in = "UPDATE tablename 
           SET (name, email) VALUES('$name', '$email')  
           WHERE id = '$id'";
    mysql_query($in);
}

你的SQL应该是这样的

$in = "UPDATE tablename
       SET name='$name', email='$email'
       WHERE id='$id'";

正如@Falcon所指出的,你错过了函数参数中的一个$

你的函数

function update($name, email, $id) {

说电子邮件和内部正在使用$email。将其更改为

function update($name, $email, $id) {

并检查

尝试

update table_name
set
col1 = val1
col2 = val2
..........where id = $id;

正确的语法是:

UPDATE tablename 
           SET name='$name',email='$email'
           WHERE id = '$id'

注意:请确保对输入进行消毒。