HTML的表单(date类型)传输数据到数据库,数据库中显示0000-00-00,请问该如何解决?

新手上路,请多包涵

不多说,直接贴代码

<!DOCTYPE html>
<html>
<body>
 <meta charset="utf-8">
 Booking #1<br>
<form name="booking" action="insert1.php" method="post">
 开始时间:<input type="date" name="startD1"><!--<input type="time" name="startT1">--><br>
 结束时间:<input type="date" name="endD1"><!--<input type="time" name="endT1">-->
  <input type="submit" />
</form>
 
</body>
</html>

<?php
$servername = "localhost";
$username = "test";
$password = "test";
$dbname = "test";
$a = $_POST [ 'startD1' ];
$b = $_POST [ 'endD1' ];
 
// 创建连接
$conn = mysqli_connect($servername, $username, $password, $dbname);
// 检测连接
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
 
$sql = "INSERT INTO booking (startD1,endD1)
VALUES ('$a','$b')";
 
if (mysqli_query($conn, $sql)) {
    echo "新记录插入成功";
} else {
    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
 
mysqli_close($conn);
?>

然后就出错了
image.png
请问问题出在哪里?我该怎么解决?

阅读 1.7k
1 个回答

我本地测试没问题,贴一下你的表结构

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题