从 HTML5 表单中获取日期 - 并发布到 MySQL

Lor*_*nas 1 html php mysql forms date

我有一个基本的 Web 表单,我需要从“日期”类型输入(html5 参见http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_type_date)中获取日期并将其发布到我的 MySQL 数据库(具有 DATE 类型 - 注意:不是 DATETIME)。

我需要某种 PHP/JS 巫术来让 2 互相交谈,有任何线索吗?

继承人到目前为止我所得到的,它总是产生 1970-01-01 的默认日期。

将其作为普通输入并使用 Jquery 强制格式会更好吗?

<!-- zee form: -->
<div>
    <!-- Start Date -->
    <div>
        <label class="col-offset-half col-3" for="order_contractStart">Contract Start:</label>
        <input class="col-offset-half col-7" type="date" id="order_contractStart" name="order_contractStart">
    </div>
    <!-- End Date -->
    <div>
        <label class="col-offset-half col-3" for="order_contractEnd">Contract End:</label>
        <input class="col-offset-half col-7" type="date" id="order_contractEnd" name="order_contractEnd">
    </div>
Run Code Online (Sandbox Code Playgroud)

然后在我的行动中,我有:

//Get Variables from form
$start = date("Y-m-d", $_GET['order_start']);
$end = date("Y-m-d", $_GET['order_end']);
Run Code Online (Sandbox Code Playgroud)

事实证明这种方法并没有真正起作用 - 所以任何指针都将不胜感激。

ker*_*ero 5

您需要strtotime()在调用之前使用date(),以便您可以处理 UNIX 时间戳(日期 ; 需要)。此外,索引与 HTML 中定义的索引不匹配。

$start = date("Y-m-d", strtotime($_GET['order_contractStart']));
$end = date("Y-m-d", strtotime($_GET['order_contractEnd']));
Run Code Online (Sandbox Code Playgroud)

也不要被 w3schools 愚弄