2

我最近获得了一个用于简单压光机拾取的 PHP 编码。但它的日期格式为 mm/dd/yy。无论如何,我可以将其自动转换为 yy-mm-dd 吗?我听说使用 strtotime 可以在它进入数据库时​​自动更改它,但我不知道如何以及在哪里添加代码。strftime("%Y-%m-%d", strtotime($Date))我尝试在主页中添加like.. ,但我不知道在哪里添加,但所有地方都无效。有什么帮助吗?非常感谢您的帮助。

这大致是它在我的主页中的样子:

if(isset($_POST["insert_click"]))
{
    $Date=$_POST["Date"];
    strftime("%Y-%m-%d", strtotime($Date)); //I tried putting it here but it does not work
    $Time=$_POST["Time"];
    $query=$connect->prepare("insert into Booking(Date, Time) values (?,?)");
    $query->bind_param('ss', $Date, $Time);
    $query->execute();
}

这大致是它在我的表单页面中的外观:

<tr>
<td>Date:</td>
<td>

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8" />
    <title>jQuery UI Datepicker - Format date</title>
    <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
    <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
    <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
    <link rel="stylesheet" href="/resources/demos/style.css" />
    <script>
    $(function()
    {
        $( "#datepicker" ).datepicker({minDate:0});
        $( "#format" ).change(function()
        {
            $( "#datepicker" ).datepicker();
        });
    });
    </script>

</head>
<body>

<input type="text" id="datepicker" size="30" name="Date"/>

</body>
</html>
</td>
</tr>
4

3 回答 3

0

一个选项是使用本机日期函数,如下所示:

$Date=DATE('y-m-d, strtotime($_POST["Date"]));
于 2013-07-24T14:49:16.250 回答
0

你的线strftime("%Y-%m-%d", strtotime($Date));是正确的。您只是忘记将这个函数的返回值分配给一个变量。你会想要这样的东西:

$newDate = strftime("%Y-%m-%d", strtotime($Date));

如果您不再需要原始日期,您还可以执行以下操作:

$Date = strftime("%Y-%m-%d", strtotime($Date));

注意:这些天来,当涉及到用于数据库或 HTML<time datetime="bla"></time>标记的 PHP 时间格式时,您可能非常懒惰。“正常”和本地化时间格式都为您提供了生成常用时间值组合的快捷方式,示例如下:

  1. c对于日期()
  2. %F对于strftime()
于 2013-07-24T14:46:37.553 回答
0

问题是您需要将日期转换的结果保存到变量中。这个说法:

strftime("%Y-%m-%d", strtotime($Date)); 

将进行日期转换并返回转换后的日期,但不会$Date理会。

要解决此问题,您需要通过将结果存储到变量来捕获结果:

$Date = strftime("%y-%m-%d", strtotime($Date));

此外,由于您想要 yy-mm-dd,请使用%y而不是%Y.

于 2013-07-24T14:36:13.620 回答