gpt4 book ai didi

php - 如果为空,MySQL 插入将日期设置为 30.11.-0001

转载 作者:行者123 更新时间:2023-11-29 15:33:14 24 4
gpt4 key购买 nike

我有一个表单,可以在其中插入一些存储在服务器中的数据。

该表单包含许多日期字段。我注意到,如果我将日期字段留空,则会将其设置为 30.11.-0001

如果日期字段为空,如何存储空字符串?

日期字段的默认值在 phpmyadmin 中设置为 NULL。

插入方法:

public function insert($data)
{
if (empty($data)) {
error_log(get_class() . " - " . __FUNCTION__ . " : data not set or empty");
return false;
}

$now = date("Y-m-d H:i:s");

$sql = " INSERT INTO ". self::TABLE
." ( "
. " property_id"
. ", country_id"
. ", property_item_type_id"
. ", prio"
. ", reg_date"
. ", reg_no"
. ", files_no"
. ", release_date"
. ", entry_date"
. ", status"
. ", runtime_max"
. ", runtime_payed"
. ", prio_date"
. ", info"
. ", create_date"
. ", create_by"
. ", update_date"
. ", update_by"
. " ) "
. " VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";

$stmt = $this->con->prepare($sql);
$stmt->bind_param(
"iiiissssssssssssss"
// i
,$data["property_id"]
,$data["country_id"]
,$data["property_item_type_id"]
,$data["prio"]
// s
,$data["reg_date"]
,$data["reg_no"]
,$data["files_no"]
,$data["release_date"]
,$data["entry_date"]
,$data["status"]
,$data["runtime_max"]
,$data["runtime_payed"]
,$data["prio_date"]
,$data["info"]
,$now
,$data["email"]
,$now
,$data["email"]
);
$stmt->execute();

$message["error"] = "Unable to insert new item!";
return $this->checkAffectedRows($stmt, $message);
}

最佳答案

解决方案是检查值是否为空,如果为空,则将其设置为 NULL,然后再将其存储到数据库。

$data["release_date"] = (strtotime($data["release_date"]) === false) ? NULL : $data["release_date"];

关于php - 如果为空,MySQL 插入将日期设置为 30.11.-0001,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58525671/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com