Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将图像插入数据库时mysql中的语法错误_Php_Mysql - Fatal编程技术网

Php 将图像插入数据库时mysql中的语法错误

Php 将图像插入数据库时mysql中的语法错误,php,mysql,Php,Mysql,我是mysql新手,非常感谢您的帮助。我想做的是将图像上传到数据库中的特定行,然后在用户页面中显示图像。我得到的错误是: 查询中出错: 您的SQL语法有错误;查看与MySQL服务器版本相对应的手册,以了解第4行附近使用的正确语法 这是引用的一段代码: $sql = "INSERT INTO users5 (image, imageName) VALUES ('{$imgData}', '{$_FILES['userfile']['name']}')WHERE id = $id;"

我是mysql新手,非常感谢您的帮助。我想做的是将图像上传到数据库中的特定行,然后在用户页面中显示图像。我得到的错误是:

查询中出错:
您的SQL语法有错误;查看与MySQL服务器版本相对应的手册,以了解第4行附近使用的正确语法

这是引用的一段代码:

$sql = "INSERT INTO users5 (image, imageName)
        VALUES ('{$imgData}', '{$_FILES['userfile']['name']}')WHERE id = $id;";
我想做的是将图像上传到数据库中的特定行

如果行已经存在,则必须使用
UPDATE
命令

$sql = "UPDATE users5 SET image = ?, imageName = ? WHERE id = ?";
$stmt = $mysqli->prepare( $sql );
$stmt->bind_param( 'ssi', $imgData, $_FILES['userfile']['name'], $id );

正如建议的那样,您最好安全地使用占位符的值,避免。

insert不能像您这样具有where条件…删除where id=$id或使用UPDATE而不是insert INTO为什么会有一个名为“某物*5*”的表???