php - SQL语法错误检查与您的MariaDB服务器版本相对应的手册,以获取在附近使用的正确语法
问题描述
我正在尝试使用 php 表单将行插入 mysql 数据库,但无法弄清楚为什么会出现此错误:
Error: INSERT INTO time ('emp_name', 'clockdate', 'start_at', 'end_at') VALUES ('John Smith','2018-05-01','08:00:00','12:00:00')
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''emp_name', 'clockdate', 'start_at', 'end_at') VALUES ('John Smith','2018-05-01' at line 1
这是我的代码:
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO time ('emp_name', 'clockdate', 'start_at', 'end_at')
VALUES ('".$_POST["Name"]."','".$_POST["Date"]."','".$_POST["Start"]."','".$_POST["End"]."')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
还有我的 HTML:
<form action="connect.php" method="post">
<input type="hidden" name="act" value="run">
<label id="Name"> Name:</label><br/>
<input type="text" name="Name"><br/>
<label id="Date"> Date:</label><br/>
<input type="text" name="Date"><br/>
<label id="Start"> Start Time:</label><br/>
<input type="text" name="Start"><br/>
<label id="End"> End Time:</label><br/>
<input type="text" name="End"><br/>
<input type="submit" value="insert">
</form>
<form action="select.php" method="get">
<input type="hidden" name="act" value="run">
<input type="submit" value="select">
</form>
抱歉,如果这个问题困扰您有经验的程序员,我已经尝试了好几个小时
解决方案
推荐阅读
- python - 如何在 Django 中获取使用带方括号的字段名称作为结构化对象的表单 postdata?
- git - 从背面同步到 git repo 时更改发布作者
- android - Flutter 上带有条件导航的启动画面
- arrays - 最低数量 将一个数组转换为另一个数组所需的更改
- c# - Loop-While 在不影响其他功能的设置超时内
- laravel - 除了 Laravel 中的主页 url,所有链接都不起作用
- javascript - 如何动态地将数组添加到对象?
- neo4j - Neo4j Cypher 查询:WHERE 子句中未考虑括号?
- apache - $_GET["foo"] 来自 RewriteRule 的 NULL
- typescript - 使用 typescript 编译器 API 以编程方式生成导入语句