将日期和时间插入MySQL
题
我正在尝试将日期和时间插入MySQL DateTime字段。当用户选择日期和时间时,它将生成两个帖子变量。我搜索了互联网,但仍然不确定该怎么做。
我的代码。
//date value is 05/25/2010
//time value is 10:00
$date=$_POST['date'];
$time=$_POST['time'];
$datetime=$date.$time
如果我将$ datetime插入mySQL,则日期似乎为0000-00-00:00:00:00
如果有人可以帮助我,我很感激。谢谢。
解决方案
$datetime = $_POST['date'] . ' ' . $_POST['time'] . ':00';
$datetime = mysql_real_escape_string($datetime);
$query = "INSERT INTO table(timestamp) VALUES ('$datetime')";
可以处理更多格式的替代解决方案:
$datetime = $_POST['date'] . ' ' . $_POST['time'];
$datetime = mysql_real_escape_string($datetime);
$datetime = strtotime($datetime);
$datetime = date('Y-m-d H:i:s',$datetime);
$query = "INSERT INTO table(timestamp) VALUES ('$datetime')";
其他提示
日期必须向您显示格式: 0000-00-00 00:00:00
因此,您必须转换它。关于此转换的数千个问题。
最短的方式就像
list($m,$d,$y) = explode("/",$_POST['date']);
$date = mysql_real_escape_string("$y-$m-$d ".$_POST['time']);
我认为DateTime格式看起来像这样:
YYYY-MM-DD HH:MM:SS
因此,您必须格式化$ DateTime才能看起来像这样。在您的查询中,需要将其封装在Quoation标记中。
- 您要么将字符串转换为
YYYY-MM-DD HH:MM:SS
格式化自己, 或者您使用
str_to_date()
MySQL的功能。插入表DateTime值(str_to_date($ date,“%m/%d/%y%h:%i”))
据我所知,默认情况下,MySQL DateTime应该在“ Yyyy-MM-DD HH:MM:SS”格式中。
我通过API在MySQL db中添加了日期和时间:
致电API
http://localhost/SendOrder.php?odate=20120323&otime=164545
odate
类型是日期otime
类型是DB中的时间。
它将以2012-03-23和Otime为16:45:45存储Odate。
不隶属于 StackOverflow