mysql日期格式dd / mm / yyyy?

时间:2012-08-17 09:29:21

标签: mysql

有没有人知道如何以dd-mm-yyyy的格式插入日期类型的日期?

我正在使用日历,它会选择像dd-mm-yyyy这样的日子,但由于默认情况下使用mysql的格式(yyyy-mm-dd),因此无法插入日期。

问题是,我需要比较日历插入的日期和使用current_date函数自动插入的日期。基本上我有列DoR(date_of_registration)和状态。我已经制作了日期类型的DoR和varchar()的状态。在状态我使用日历来插入日期。因此,无论如何我都比较了它,但它给出了奇怪的结果。我想这不是正确的比较。

有什么想法吗?

由于

6 个答案:

答案 0 :(得分:5)

将日历的输出转换为日期格式,如下所示

$cal_date=17-08-2012;
$date=date('Y-m-d',strtotime($cal_date));
echo $date; //gives date as 2012-08-17

现在您可以将此日期插入mysql并进行比较

答案 1 :(得分:0)

您只需要这两个功能:

STR_TO_DATE()

DATE_FORMAT()

答案 2 :(得分:0)

请始终将日期存储为MySQL中的DATE类型。如果您需要以其他形式选择它,请使用正确的字符串函数DATE_FORMAT

答案 3 :(得分:0)

select str_to_date('31-12-2012', '%d-%m-%Y')

请参阅STR_TO_DATE

答案 4 :(得分:0)

您无需将数据库插入为dd-mm-yyyy。您必须使用用户日期格式。如果你在php中编写代码,你可以解析日期你想要的每种类型

选择数据库的日期时间。如果要回显日期不同的格式,例如

,请插入日期数据date("Y-m-d H:i:s");
echo date('d-m-Y', strtotime('2012-08-17 19:00:00'));

答案 5 :(得分:0)

  

如果您选择

,还有另一种存储日期的方法
`<input type="date" name="bdate" />
`
  

然后它以yyyy-MM-DD格式直接将日期存储到数据库中。       这里我的文本字段格式是dd-mm-yyyy。    在这里,您不必使用strtotime()

转换字符串