gpt4 book ai didi

php - 从 php 到 mysql 的日期字段返回错误 0000-00-00

转载 作者:行者123 更新时间:2023-11-29 06:08:56 24 4
gpt4 key购买 nike

我有一个 php 表单,我必须在其中手动输入日期。当我输入日期为 Y/M/D 时,我没有任何问题。但是,如果我输入日期为 d/m/y,它将在我的数据库中存储为 0000-00-00

$TransactionDate= $row['DealDate'];

TransactionDate = 我的字段名称DealDate = 我的列名称

我需要帮助!

最佳答案

试试这个代码

$date = mysql_real_escape_string($_POST['DealDate']);
  1. 如果您的 MySQL 列是 DATE 类型:

    $date = date('Y-m-d', strtotime(str_replace('-', '/', $date)));
  2. 如果您的 MySQL 列是 DATETIME 类型:

    $date = date('Y-m-d H:i:s', strtotime(str_replace('-', '/', $date)));

如果日期分隔符是 - 您不能使用 strototime(),因为它不能与破折号 - 分隔符一起使用,它将尝试进行减法。

在这种情况下使用正则表达式

$date = mysql_real_escape_string($_POST['DealDate']);
$date = preg_replace('#(\d{2})/(\d{2})/(\d{4})\s(.*)#', '$3-$2-$1 $4', $date);
echo $date;

关于php - 从 php 到 mysql 的日期字段返回错误 0000-00-00,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10022501/

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