我确定我遗漏了一些明显的东西,请快速查看,谢谢。问题可能出在结构中(在下面发布)。
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 pictures (ext) 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
最佳答案
您插入的值周围缺少单引号
$addNewFileQuery = "INSERT INTO pictures (ext) VALUES ('".$ext."')";
引用您的查询的错误消息使这一点变得显而易见
INSERT INTO pictures (ext) VALUES (gif)
你可以看到 gif
不是字符串,因为它没有引号。
关于php - 为什么这个简单的 MySQL 查询失败了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22048588/