这是编辑插入的行、具有图像路径名称的字段的正确方法吗?
$query = "UPDATE products SET image = $_FILES["file"]["name"] WHERE name = $name";
我更关心 sql 语法,然后是 php。
您需要在字符串周围加上引号,并且您应该确保清理输入(或者更好的是,使用参数化 - 请参阅Bobby Tables)。
$filename = mysql_real_escape_string($_FILES['file']['name']);
$name = mysql_real_escape_string($name);
$query = "UPDATE products SET image = '{$filename}' WHERE name = '{$name}'";
您需要单引号,并且可能需要 mysql_real_escape_string
$query = "UPDATE products SET image = '".mysql_real_escape_string($_FILES["file"]["name"])."' WHERE name = '$name'";
注意报价
$query = "UPDATE products SET image ='". mysql_real_escape_string($_FILES["file"]["name"]) ."' WHERE name ='". $name."'";
$query = sprintf('UPDATE products SET image="%s" WHERE name="%s"',
mysql_escape_string($_FILES["file"]["name"]),
mysql_escape_string($name)
);