php - html 表单中 Mysql 数据库中记录的日期值为 0000-00-00

标签 php mysql date textbox

我知道同样的问题已经被问过好几次了,但我似乎无法理解它。我已经完成了我找到的所有解决方案,但它在我的情况下不起作用。“日期”被记录为 0000- Mysql 数据库中的 00-00 而不是正确的日期。这是 PHP 代码。`

// initialize variables

$Vehicle_name = "";
$Vehicle_make = "";
$Vehicle_color="";
$Number_plate = "";
$Driver_name = "";
$Number_of_passengers = "";
$Date = "";
$Time = "";
$Security = "";


$id = 0;
$update = false;

if (isset($_POST['save'])) {

    $Vehicle_name = $_POST['Vehicle_name'];
    $Vehicle_make = $_POST['Vehicle_make'];
    $Vehicle_color = $_POST['Vehicle_color'];
    $Number_plate = $_POST['Number_plate'];
    $Driver_name = $_POST['Driver_name'];
    $Number_of_passengers = $_POST['Number_of_passengers'];
    $Date = $_POST['Date '];
    $Time = $_POST['Time'];
    $Security = $_POST['Security'];


    mysqli_query($db, "INSERT INTO vehicle (Vehicle_name,Vehicle_make,Vehicle_color,Number_plate,Driver_name,Number_of_passengers,Date,Time,Security ) VALUES ('$Vehicle_name','$Vehicle_make','$Vehicle_color','$Number_plate','$Driver_name','$Number_of_passengers','$Date','$Time','$Security ')"); 
    $_SESSION['message'] = "Car registered"; 
    header('location: welcome.php');
}`.

这也是日期文本框代码。

<div class="input-group"> <label>Date :</label> <input type="date" name="Date" value="" required="yes" > </div> .

我花了很多时间试图弄清楚,但一切都是徒劳,请帮助。问候。

最佳答案

您的 key 中有空格

$Date = $_POST['Date '];

更改为

$Date = $_POST['Date'];

传递参数的方式会导致SQL 注入(inject)。请阅读 here

关于php - html 表单中 Mysql 数据库中记录的日期值为 0000-00-00,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55897611/

相关文章:

php - 为什么 Laravel 广播事件总是使用 "laravel_database_channel" channel 以及如何更改它?

mysql - 如何选择给定多行匹配的数据?

php - 在 MySQL 中选择下一个日期

php - 如何在 PHP 中将文本文件加载到数据库?

php - 如何在PHP中更改查询结果页面的URL?

php - 根据当前月份显示数据库中的数据

php - MySql 日期格式与word

php - 如何从 Mysql 中选择逗号分隔的变量

python - 循环日期范围子+将天分配给各自的月份

sql - 如何在SQL Server中确定一个月中有多少天?