php日期格式

时间:2010-09-13 11:32:37

标签: php mysql datetime

我正在尝试将当前日期从php表单插入数据库。

我的查询是:

   $sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', 'date()')";

这产生以下:0000-00-00 00:00:00,这显然是不对的。

有人可以推荐如何让它显示正确的日期/时间吗?

另外,我需要它采用以下格式:yyyymmddhhmmss - 这可能吗?我该怎么做呢?

谢谢!

6 个答案:

答案 0 :(得分:1)

使用SQL NOW()函数:

$sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', NOW()";

答案 1 :(得分:1)

你应该使用php的函数time()或mysql的UNIX_TIMESTAMP这是int(11)并使用如下:

INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', UNIX_TIMESTAMP --

然后在PHP循环中使用date()函数从php创建一个可视时间戳。

答案 2 :(得分:0)

$sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', 'date(dmy)')";

$time = date('Ymd g:i');
$sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', " .$time . ")";

答案 3 :(得分:0)

$date = date ( 'Y-m-d H:i:s'); 
$sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', '$date')";

答案 4 :(得分:0)

请参阅PHP手册,了解日期()的使用:http://php.net/manual/en/function.date.php

因此,根据您的需要,它将是:

$date = date("YmdHis");
$sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', '$date')";

您也可以考虑Fabrik的建议。使用UNIX时间戳可能是最可靠的方法。

答案 5 :(得分:0)

我认为你的date列实际上是mysql DATETIME类型。

$sql3="INSERT INTO orderDetails (compName, package, cost, date) VALUES ('$companyName', '$package', '$cost_record', NOW())";

应该这样做。

您可以将它存储在DATETIME类型中(您将其视为yyyy-mm-dd hh:mm:ss),然后在从数据库中选择它时将其格式化为yyyymmddhhmmss

SELECT DATE_FORMAT(date, '%Y%m%d%H%i%s') FROM orderDetails

http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-format