【问题标题】:Strange date format from date picker to mysql/php从日期选择器到 mysql/php 的奇怪日期格式
【发布时间】:2017-06-22 04:45:45
【问题描述】:

任何人都可以看到这里有什么问题吗?我不能:(

示例日期:2017 年第 2 个月第 10 天

在我的数据库中插入:2017-10-02

DB 设置为 DATE

Jquery 日期选择器:

    $('.datepicker').daterangepicker({ 
    singleDatePicker: true,
    locale: {
        format: 'DD/MM/YYYY'
    }
});

日期选择器输出到 HTML:2017 年 10 月 2 日

PHP:

$Newdate = date('Y-m-d', strtotime(str_replace('-', '/', $DateTaken)));

为什么要切换日期和月份?

【问题讨论】:

    标签: php jquery mysql date datepicker


    【解决方案1】:

    您必须在 date() 函数中更改日期格式:

    $Newdate = date('d-m-Y', strtotime(str_replace('-', '/', $DateTaken)));
    

    文档: http://php.net/manual/en/function.date.php

    【讨论】:

    • 已阅读文档,但您的建议将日期插入为 0000-00-00。仅显示用户的输入时日期是正确的,但是将该日期转换为mysql理解日期“Y-m-d”的日期,甚至它仍然会切换月份和日期?!?!
    • 在此处查看:stackoverflow.com/questions/8338031/… ...“MySQL 以 'YYYY-MM-DD HH:MM:SS' 格式检索并显示 DATETIME 值。”这是来自 mysql 网站。您只能存储此类型,但您可以在需要显示时使用众多时间格式函数之一来更改它。
    • 好的,将表格从 DATE 更改为 DATETIME 并使用新的日期格式再次尝试,结果相同。但是,如果我从 date("Y-m-d") 更改为 date("Y-d-m") 它就起作用了!当用户输入时,日期已正确保存到数据库中。天 10 月 2 年 2017 结果为 db = 2017-02-10 00:00:00):D
    猜你喜欢
    • 1970-01-01
    • 2014-05-08
    • 2014-04-22
    • 1970-01-01
    • 1970-01-01
    • 2019-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多