我试图将从日期选择器填充的文本框的值发布到我的数据库,但我不断收到发布的值 1970-01-01。我对此进行了研究,但看不出哪里出了问题,下面是输入类型。
<label for="from">From:</label>
<input type="text" id="from" name="from">
<label for="to">To:</label>
<input type="text" id="to" name="to">
在表格中我有:
$fromdate = date('Y-m-d', strtotime($_POST['from']));
$todate = date('Y-m-d', strtotime($_POST['to']));
$request = mysql_query("INSERT INTO messages (fromdate, todate) VALUES ('$fromdate', '$todate')") or die(mysql_error());
有人知道我该如何解决这个问题吗?
谢谢
最佳答案
strtotime()无法正确猜测格式的问题。
因此您可以:
重新格式化 DatePicker 的标准输出: option-altField - 您可以忽略常规字段并将 altField 发送到 db
在 PHP 输出中或重新格式化
相反 strtotime($_POST['from']))
你可以使用这样的东西
$myDate = DateTime::createFromFormat('date-time-format-from-datepicker',$_POST['from'])->format('Y-m-d')
要使“date-time-format-from-datepicker”格式正确,您可以使用 php date formatting symbols table - 这需要一些时间,但一定有效
关于javascript - 格式化日期选择器以发布到 MySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28707217/