我确定我错过了一些明显的东西,请快速查看,谢谢。问题可能出在结构中(如下所示)。
public function addNewFile($ext) {
$addNewFileQuery = "INSERT INTO pictures (ext) VALUES (".$ext.")";
$result = mysqli_query($this->connection, $addNewFileQuery) or die('could not execute query in addnewfile, extension: '.$ext.' query: '. $addNewFileQuery);
return(mysqli_insert_id($this->connection));
}
显示的模具错误消息是:“无法在addnewfile中执行查询,扩展名:gif查询:INSERT INTO图片(分机)VALUES(gif)”
数据库的结构:
Name Type Collation Attributes Null Default Extra
id bigint(20) No None AUTO_INCREMENT (primary)
ext varchar(6) latin1_swedish_ci No None
title varchar(100) latin1_swedish_ci Yes NULL
caption varchar(200) latin1_swedish_ci Yes NULL
date_uploaded timestamp No CURRENT_TIMESTAMP
答案 0 :(得分:4)
您在插入的值周围缺少单引号
$addNewFileQuery = "INSERT INTO pictures (ext) VALUES ('".$ext."')";
引用您的查询的错误消息显而易见
INSERT INTO pictures (ext) VALUES (gif)
由于周围缺少引号,您可以看到gif
不是字符串。
答案 1 :(得分:1)
您的查询缺少值的引用。
... = "INSERT INTO pictures (ext) VALUES ('".$ext."')";
答案 2 :(得分:1)
这是因为您在插入变量之前缺少单引号
将其更改为
$addNewFileQuery = "INSERT INTO pictures (ext) VALUES ('".$ext."')";
答案 3 :(得分:1)
你也可以使用这个 -
$addNewFileQuery = "INSERT INTO pictures (ext) VALUES ('$ext')";